Python Matplotlib による単位変換

Beginner

This tutorial is from open-source community. Access the source code

はじめに

この実験では、Python Matplotlib を使ってマスク付き配列での単位変換を行う方法について、手順を追ったチュートリアルを行います。

VM のヒント

VM の起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebook を使って練習しましょう。

時々、Jupyter Notebook が読み込み終わるまで数秒待つ必要があります。Jupyter Notebook の制限により、操作の検証は自動化できません。

学習中に問題に遭遇した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。

ライブラリのインポート

このステップでは、単位変換とグラフ作成を行うために必要なライブラリをインポートします。

import matplotlib.pyplot as plt
import numpy as np
from basic_units import hertz, minutes, secs

マスク付き配列の作成

このステップでは、マスク付き配列を作成し、マスクをデータに適用します。

## create masked array
data = (1, 2, 3, 4, 5, 6, 7, 8)
mask = (1, 0, 1, 0, 0, 0, 1, 0)
xsecs = secs * np.ma.MaskedArray(data, mask, float)

グラフの作成

このステップでは、異なる単位のマスク付き配列を使って 3 つのグラフを作成します。

## create subplots
fig, (ax1, ax2, ax3) = plt.subplots(nrows=3, sharex=True)

## plot 1
ax1.scatter(xsecs, xsecs)
ax1.yaxis.set_units(secs)

## plot 2
ax2.scatter(xsecs, xsecs, yunits=hertz)

## plot 3
ax3.scatter(xsecs, xsecs, yunits=minutes)

## set labels
ax1.set_ylabel('Seconds')
ax2.set_ylabel('Hertz')
ax3.set_ylabel('Minutes')
ax3.set_xlabel('Time')

グラフの表示

このステップでは、前のステップで作成したグラフを表示します。

## display plot
plt.show()

まとめ

この実験では、Python の Matplotlib を使ってマスク付き配列で単位変換を行う方法を学びました。マスク付き配列を作成し、データにマスクを適用しました。また、異なる単位のマスク付き配列を使って 3 つのグラフを作成し、表示しました。