私は、3つの軸と2つの軸を持つ2つのプロットを生成するPython3.6コードを持っています。 3軸のプロットには、細い線で凡例が表示されます。 2番目の図のコードである。ここでMatplotlib 2つのy軸を持つポットのプロット凡例線の太さを減らしますか?
:
残念ながら第二プロット凡例は、ラベルの高さに等しい厚さを有する線有する一桁上の
2のプロットを
凡例の線の太さをどのように減らすことができますか?
このコードは投稿に表示されなかったようです。
ここにある:あなたの凡例の行をしたいが、実際にパッチを使用よう
#two plots on one figure
def two_scales(ax1, time, data1, data2, c1, c2):
ax2 = ax1.twinx()
ax1.plot(time, data1, 'r')
ax1.set_xlabel("Distance ($\AA$)")
ax1.set_ylabel('Atom Charge',color='r')
ax2.plot(time, data2, 'b')
ax2.set_ylabel('Orbital Energy',color='b')
return ax1, ax2
t = data[:,0]
s1 = data[:,3]
s2 = data[:,5]
fig, ax = plt.subplots()
ax1, ax2 = two_scales(ax, t, s1, s2, 'r', 'b')
def color_y_axis(ax, color):
for t in ax.get_yticklabels():
t.set_color(color)
return None
color_y_axis(ax1, 'r')
color_y_axis(ax2, 'b')
plt.title('Molecular Transforms')
patch_red = mpatches.Patch(color='red',label='Atom Charge')
patch_blue = mpatches.Patch(color='blue',label='Orbital Energy')
plt.legend(handles = [patch_red,patch_blue])
plt.draw()
plt.show()
name_plt = name+'-fig2.png'
fig.savefig(name_plt,bbox_inches='tight')
ソリューションのための多くのおかげで。問題は解決されました。 – Steve