0

2 次元配列のプロットを作成するコードがあります。x 軸に沿って配列のインデックスが表示されますが、インデックスが表す値を x 軸に表示したいと思います。

関連コード:

plt.imshow(data, aspect="auto")
plt.colorbar()
plt.show()

ここで、「データ」は 1000 x 200 の配列です。現時点では、プロットは正しく作成されており、x 軸は配列のインデックス番号 (0-199) を示しています。

しかし、このインデックスは、長さ 200 の別のリスト (date[]) の日付にも対応しています。インデックス自体ではなく、インデックスに対応する日付を x 軸に表示したいのです。

どうすればこれを修正できますか?

4

2 に答える 2

2

x-ticks と使用できるラベルを配置するには

plt.xticks(range(200),date)

ただし、上記では目盛りとラベルが多すぎます。ティック数を5に減らしたい場合は、次を使用できます

idx=np.linspace(0,199,5).astype('int')
plt.xticks(idx,[date[i] for i in idx])
于 2012-07-25T15:14:47.843 に答える
1

imshow() メソッドを作成しましたか、それともライブラリの一部ですか? あなたの場合は、各 x の date[x] 値を取る行を追加するだけです。

そのメソッドがライブラリの一部である場合、他のことを解決できる可能性がありますが、それについてもっと知る必要があります。

于 2012-07-25T14:37:10.503 に答える