x軸の日付目盛りラベルの書式を調整して、YearとMonth値のみを表示しようとしています。私がオンラインで見つけたものから、私はmdates.DateFormatter
を使用しなければなりませんが、それは私の現在のコードではまったく有効ではありません。誰が問題がどこにあるかを確認しますか?軸ラベルのMatplotlib DateFormatterが機能しない
import matplotlib.dates as mdates
import matplotlib.pyplot as plt
import pandas as pd
fig = plt.figure(figsize = (10,6))
ax = fig.add_subplot(111)
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m'))
basicDF['some_column'].plot(ax=ax, kind='bar', rot=75)
ax.xaxis_date()
みんなありがとう(日付はパンダのデータフレームのインデックスです)!
再現シナリオコード:まだ
import numpy as np
import matplotlib.dates as mdates
import matplotlib.pyplot as plt
import pandas as pd
rng = pd.date_range('1/1/2014', periods=20, freq='m')
blah = pd.DataFrame(data = np.random.randn(len(rng)), index=rng)
fig = plt.figure(figsize = (10,6))
ax = fig.add_subplot(111)
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m'))
blah.plot(ax=ax, kind='bar')
ax.xaxis_date()
を表示するだけの年月を取得することはできません...
あなたがバーを描画した後、あなたは形式を設定した場合はどうなりますか? –
@PaulH - .plotの後に書式を設定すると、次のようなエラーが表示されます。ValueError:DateFormatterがx = 0という値を見つけました。これは不正な日付です。これは通常、ax.xaxis_date()などの日付をプロットしていることを軸に通知していないために発生します。 ax.xaxis_date()の前に置いた場合と同じです。 – SpicyClubSauce
oof - これが私がパンダでプロットするのが嫌な理由です。あなたのサンプルを再現可能にすることができますか(つまり、外部ファイルなしで 'basisDF'を作成するコードを追加してください)、私は見てみようと思います。 –