見出し画像

データを読み込んでプロット(matplotlib)

シンプルなデータについては、numpyを使うのが一番簡単ではないかという気がしています。numpyはmatplotlibの動作に必須なので、matplotlibを使える方はすでにインストール済みのはずです。

numpy.loadtxt は、データ欠損がない時に使えます。データに飛びがある時にはnumpy.genfromtxt が使えます。ただし、loadtxt  の方が処理が軽いらしいです。

以下、サンプルデータとプロット例。

#sampledata.txt
#x y
0.1 0.2
0.2 0.7
0.3 0.6
0.4 0.4
#load_and_plot_data.py
import matplotlib.pyplot as plt
import numpy as np

fig, ax = plt.subplots()
x, y = np.loadtxt("sampledata.txt", unpack=True)
ax.plot(x,y,"o-")
plt.show()
実行結果

loadtxt, genfromtxt に指定できるオプションについて、いくつか抜粋してメモ。
comments  デフォルトは"#"。行中に出てきたら以降はコメントとして読み飛ばされます。
delimeter  区切り文字。デフォルトはスペース(" ")。文字でなく数値または数値のシーケンス(タプルとか配列)を入力するとフィールドの長さの指定になります。
unpack  デフォルトはFalse。Trueにすると転置(行と列の交換)をした結果を渡してくれます。

参考URL:
https://numpy.org/doc/stable/reference/generated/numpy.loadtxt.html
https://numpy.org/doc/stable/reference/generated/numpy.genfromtxt.html


この記事が気に入ったらサポートをしてみませんか?