matplotlibを使用して、Pandas Dataframeに保存されているデータをプロットします。私はx軸のティックに特定のラベルを貼りたい。だから、私はそれらを設定します。うまく動作しますが、それはプロットが読めなくなって、各データポイントの目盛りラベルを設定しますmatplotlibプロットのラベルのテキストと周波数を
ax.xaxis.set_ticklabels(data_frame['labels'])
ので、私が試した:の数を減らすことができ
ax.locator_params(axis='x', nbins=3)
(ラベルがa、b、c、d、e ...、x、y、zの場合、ラベルはa、m、 zなど)。私の次のアイデアは、目盛りラベルの位置を設定することでした:
ax.xaxis.set_ticks(data_frame.index.values)
しかし、動作しません。どのような作品
は次のとおりです。
ax.xaxis.set_ticklabels(data_frame['labels'][::step])
ax.xaxis.set_ticks(data_frame.index.values[::step])
任意のlocator_params
を設定せずに。
これはほぼ完璧です。それはティックとラベルを修正しますが、(matplotlibインタラクティブウィンドウを使って)プロットをズームすると、新しいラベルは明らかに表示されません。そして私が必要とするのは、プロットのズームに応じて調整可能な読み取り可能なティックです(これはax.locator_params(axis='x', nbins=3)
がカスタムラベルなしで正しく機能するものです)。
つまり、データポイントごとに固有のラベルを設定する必要がありますが、プロットの軸の目盛りには、正しい割り当てを失うことなく、それらのラベルのみを表示する必要があります。
私はあなたが望むものを理解する問題を抱えています。なぜ実際にデータポイントの位置にラベルを付けるだけのときに新しいラベルを表示したいのですか?それは私と矛盾しているようです。 – ImportanceOfBeingErnest
@ michal-2am私の答えはあなたの質問に答えましたか? – mhoff