我需要创建一个单一的数字与一些子情节。该图必须与下图完全相同:
我在绘制第二个图时遇到了问题,我不知道如何从另一个图中获得“缩放”,我使用了技巧,但如果我使用这个来生成第二个图,则不起作用。我怎么能阴谋?这就是我所做的:
import matplotlib.pyplot as plt
def plot_graph():
x = list(range(0,1000))
y1 = [10*a-4 for a in x]
y2 = [a**2 for a in x]
plt.subplot2grid((2,2), (0,0))
plt.plot(x,y1,y2)
plt.xticks(list(range(0,120,20)), labels=[0,200,400,600,800,1000])
plt.xlim(0,100)
plt.yticks([1,100,1000,10000,100000])
plt.ylim(1,100000)
plt.grid(True)
plt.plot(x,y1, "r-", label = "y=10.x-4")
plt.plot(x,y2, "g-", label = "y=x²")
plt.legend(loc = "lower right")
plt.yscale('log')
plt.xlabel('X')
plt.ylabel('Y')
plt.title('Functions:')
plt.subplot2grid((2,2), (0,1))
plt.plot(x,y1,y2)
plt.grid(True)
plt.plot(x,y1, "r-")
plt.plot(x,y2, "g-")
plt.yscale('log')
plt.title('Intersection:')
plot_graph()
2条答案
按热度按时间t3psigkw1#
三分
1.使用
plt.subplots
和关键字参数width ratio=[]
1.使用
ax.semilogy(x, y, ...)
进行绘图1.在第二个子图中改变x和y的限制,你就可以缩放了
vybvopom2#
输出: