Python 循环内的matplotlib twinx
我有一个循环,在特定条件下(例如发生3次),我想用twinx绘制两个数据集,所以最后我在左y轴上绘制了3个图,在右y轴上绘制了3个图。当我使用通常的twinx时,循环对right-y取不正确的值。如何修改此示例代码以使其正确?多谢各位Python 循环内的matplotlib twinx,python,matplotlib,Python,Matplotlib,我有一个循环,在特定条件下(例如发生3次),我想用twinx绘制两个数据集,所以最后我在左y轴上绘制了3个图,在右y轴上绘制了3个图。当我使用通常的twinx时,循环对right-y取不正确的值。如何修改此示例代码以使其正确?多谢各位 import numpy as np import matplotlib.pyplot as plt x=np.linspace(0,10,100) A=5 fig,ax=plt.subplots() for i in range(0,10): A=i*
import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(0,10,100)
A=5
fig,ax=plt.subplots()
for i in range(0,10):
A=i**2
if(i%3==0):
ax.plot(x,A*np.sin(x),'-ro')
ax2=ax.twinx()
ax2.plot(x,A*x,'-bp')
plt.show()
这是输出。
您需要将“ax2”定义移到循环之外(见下文)。然而,这就形成了七个情节,四个在左边,三个在右边。你需要更新你的“如果”条件
[![import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(0,10,100)
A=5
fig,ax=plt.subplots()
ax2=ax.twinx()
for i in range(0,10):
A=i**2
if(i%3==0):
ax.plot(x,A*np.sin(x),'-ro')
ax2.plot(x,A*x,'-bp')
plt.show()][1]][1]
我的处境与此完全相同,我想添加图例。你能为每个情节添加图例并显示图例吗?@JoonhoPark我想你想要的答案已经包括在内: