matplotlibのimshow()
関数を使用してpandas.DataFrame
を表示しています。pandas、matplotlib、軸目盛ラベルとしてデータフレームインデックスを使用
x軸とy軸の両方のラベルとティックをDataFrame.indexとDataFrame.columnsリストから取得したいと思いますが、どのように行うのかわかりません。
>>> print data
<class 'pandas.core.frame.DataFrame'>
Index: 201 entries, 1901 to 2101
Data columns:
jan 201 non-null values
feb 201 non-null values
mar 201 non-null values
apr 201 non-null values
may 201 non-null values
jun 201 non-null values
jul 201 non-null values
aug 201 non-null values
sep 201 non-null values
oct 201 non-null values
nov 201 non-null values
dec 201 non-null values
私はこれを行う場合:
ax1 = fig.add_subplot(131, xticklabels=data.columns, yticklabels=data.index)
ax1.set_title("A")
ax1.tick_params(axis='both', direction='out')
im1 = ax1.imshow(data,
interpolation='nearest',
aspect='auto',
cmap=cmap)
をIは画像のy軸上にうまく離間目盛りラベルで終わるが、ラベルがあるdata
がpandas.DataFrame
であると仮定すると
同様に、x軸目盛りのラベルは、jan-decではなくfeb-julです。
Iは
ax1 = fig.add_subplot(131) # without specifying tick labels
を使用する場合、私は軸目盛ラベルは、単に基礎となるndarray指標値(すなわち、0から201及び0-12)であることで終わります。ダニとラベルの間隔や数量を変更する必要はありません。ラベルテキストをDataFrameインデックスと列リストから取得するだけです。私は何かが簡単かどうか分からないかどうか分からない?
ありがとうございます。
これは最も一般的な解決策です。これは、DateTimeハッキングなどが不要です。 – FuzzyDuck