Plotly①(折れ線グラフ)

今回から、plotly.pyを使っていろいろなグラフの描画を行っていきます。

株価データ

まずはデータを準備します。

読み込むデータは株価データです。

[Google Colaboratory]

1
2
3
4
import plotly

stocks = plotly.data.stocks()
stocks.head()

[実行結果]

折れ線グラフ

折れ線グラフを描画するためにはScatter関数を利用します。

引数 xに日付データ(date)、引数 yにはGoogleの株価(GOOG)を設定しています。

[Google Colaboratory]

1
2
import plotly.graph_objects as go
go.Figure(go.Scatter(x=stocks["date"], y=stocks["GOOG"])).show()

[実行結果]

折れ線グラフ(スライダ付き)

スライダを使うと、描画範囲を変更したり、指定した範囲の描画位置の移動ができるようになります。

Range Sliderを表示するにはlayoutのxaxis.rangeslider.visible属性にTrueを設定します。(4行目)

また、Range Selectorは1か月や1週間など、期間を固定した範囲指定ができます。(5~11行目)

[Google Colaboratory]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
ts_layout = go.Layout(
# X軸のRange SliderとRange Selectorを表示
xaxis={
"rangeslider": {"visible": True}, # RangeSliderを表示
"rangeselector": { # RangeSelectを設定
"buttons": [
{"label": "1m", "step": "month", "count": 1}, # 1ヵ月
{"label": "7d", "step": "day", "count": 7}, # 7日間
{"step": "all"}, # 全期間
]
},
}
)

go.Figure(
go.Scatter(x=stocks["date"], y=stocks["GOOG"]), layout=ts_layout
).show()

[実行結果]

Range Slider(下側のグラフ)で描画範囲や描画位置を変更して表示することができます。

またグラフ左上のRange Selector(1m/7d/all)をボタンを押すと、固定された期間でグラフの表示が切り替わります。