2016-03-22 9 views
1

第チャートに2つのグラフをプロットする(パンダからより具体的にプロット法)を覆うとともにサイドバイサイド第チャート上層とipythonノートブックに2番目のグラフを表示し、2番目のy軸を使用します。しかし、私はオーバーレイを動作させることができませんでした。matplotlibの2つのグラフサイドバイサイド第私はmatplotlibのを使用しようとしてい

現在、これは私のコードです:

import matplotlib.pyplot as plt 
%matplotlib inline 

fig, axs = plt.subplots(1,2) 
fig.set_size_inches(12, 4) 

top10.plot(kind='barh', ax=axs[0]) 
top10_time_trend.T.plot(kind='bar', stacked=True, legend=False, ax=axs[1]) 
time_trend.plot(kind='line', ax=axs[1], ylim=0, secondary_y=True) 

私は私が探していますサイドバイサイド構造を得るが、のみ(TOP10)最初と最後(time_trend)のプロットが表示されています。私の出力は以下の通りです:

別途図示しないプロット(top10_time_trend)をプロット

enter image description here

は私が達成しようとしていること、つまり、このようなものである。この

enter image description here

のように見えますスタックされたバーの上に折れ線グラフがオーバーレイされます。これを行うための最善の方法は、第3の軸を作成することである

enter image description here

答えて

1

は言う:

ax3 = ax[1].twinx() 

、その後

top10_time_trend.T.plot(kind='bar', stacked=True, legend=False, ax=ax3) 

が、これはあなたのために働く場合は私に知らせてください。ここで

あなたはmatplotlibのドキュメントからTWINX()の使用のための例を見つけることができます上記の間違いがあったhttp://matplotlib.org/examples/api/two_scales.html

+0

申し訳ありません。更新された回答を必ずお試しください。 –

+0

レスポンスありがとうFrancisco!残念ながら、それはまだ動作していません。 Twinxは私が必要としているようですが、私がmatplotlibで直接作成すると、2つのチャートをうまく重ねることができます。しかし、パンダを使ってチャートを作ったときにはうまくいかないようです。 私は私の試みをより批判的に見るので、私は、私が期待する2つの軸を得ることに気づいています。 1つのチャートの背景が他のチャートの視認性を妨げているような感じです。 – Chris

関連する問題