2012-02-12 14 views
0

hereというスニペットをスクリプトの開始点として使用しています。最初の(つまりメイン)チャートの一番下にボリュームチャートを表示したいと思います。ボリュームサブチャートは、基本的にプロットされた垂直バーです。matplotlibグラフにサブプロットを追加する

理想的には、日付(すなわちX軸)ラベルはボリュームサブプロットの下にあります。つまり、同じ日付(X)軸がトップ(メイン)チャートとサブプロットの両方に使用されます。しかし、スニペットを提出する人にとっては、人生を楽にすると、ボリュームのサブチャート(X軸の日付ラベルの有無にかかわらず)で暮らすことができます。

私は、matplotlibのドキュメントと分散チュートリアルが非常に混乱していることがわかりました。グラフのこの種が行われている(またはスニペットは、ここに掲載)

+1

とボリュームのサブチャートは基本的に提供しますいくつかの変更(主に一般的なX軸ラベル)を使用しています - それはそうではありませんか? –

+0

@RicardoCárdenes:はい、あなたの理解は正しいです。 'ボリューム'グラフは基本的に縦棒です(提供したリンクの画像の下の図のように見えます) –

答えて

1

ax = fig.add_subplot(211)

にサブプロットの斧の宣言を変更し、minor_formatter宣言をコメントアウト非常に有用であろう例へのリンク #ax.xaxis.set_minor_formatter(dayFormatter)

show()コール

fig.subplots_adjust(hspace=0.5) 
ay = fig.add_subplot(212) 
ay.xaxis.set_major_locator(mondays) 
ay.xaxis.set_minor_locator(alldays) 
ay.xaxis.set_major_formatter(weekFormatter) 
dates = [ x[0] for x in quotes] 
volumes = [ x[-1] for x in quotes] 
ay.bar(dates,volumes,0.35) 
前に、次を追加します210

これは、[この](http://matplotlib.sourceforge.net/users/pyplot_tutorial.html#working-with-multiple私はあなたが望むものを理解し、独自のX軸の日付のラベル

+0

これはほとんど動作しますが、私は2つの「癖」に気づいています。 **既存のグラフの下の部分を上書きします**。 2)。ボリュームチャートには2つの説明できないギャップがあります.1つはボリュームチャートの最初にあり、もう1つはボリュームチャートの最後にあります。これは、X軸のスケーリングが異なることを示唆しているようです。 (メイン)チャートのチャートよりも –

+0

両方のプロットで同じxデータを使用するようにスニペットを更新しました。これはquirk 2を修正するはずです。私はquirk 1を再現できません。fig.subplots_adjust(hspace = 0.5)は、2つのサブプロット間の垂直スペースが上書きを避けるのに十分であることを保証する。 – Appleman1234

関連する問題