pandasのDataFrameで、時系列と数値列とによるdfを作成し、seaborn.relplotで描画しました。
dfはこんなのです。
col | |
---|---|
2020-01-01 | 10 |
2020-01-02 | 20 |
import pandas as pd import seaborn as sns df = pd.DataFrame([10,20],index=pd.to_datetime(['20200101','20200102']), columns=['col']) g = sns.relplot(data=df)
すると、実際に含まれる2020年からは大きく異なり、2000年を下限とする広範囲のX領域で表示されてしまいました。
なお、dfの時系列カラムのdtypeが、'datetime64[ns]'になっていることを確認済みです。
そこで、axesのxlimを使って範囲を指定しようとしたのですが、時系列データの指定方法が分かりません。
考えたこと1:ax.xlimで2019年12月31日と2020年1月3日などが設定できればよい。
でも、データフレームではないので、pd.to_datetimeが使えず、どうすればよいか見通しが立ちません
g.ax.set_xlim(starttime,endtime)
考えたこと2:作られているグラフの範囲をgetすれば逆算の参考になるかも。
そこで、
g.ax.get_xlim()
としたら、
(729754.7, 737791.3)
がかえってきました。これが2000年頃と、2020年頃を指しているのですね…。
型は'numpy.float64'でした。
しかし、どうやったら2020年1月3日というような日にちからこの数字を求められるかわからず、次に進めません。
numpy.datetime64で調べましたが、このようなfloat64のフォーマットについての記述を見つけることができませんでした。
以上二つの考えたことの次のステップのアドバイスを頂けるとありがたいです。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー