我是Python的新手,通过实践来学习。我想用matplotlib在Python中创建两个图表。第二个图表保持第一个图表的范围。我想知道如何更改每个后续图表的范围。请问有什么帮助吗?推荐的方法是什么?
X1 = [80, 100, 120, 140, 160, 180, 200, 220, 240, 260]Y1 = [70, 65, 90, 95, 110, 115, 120, 140, 155, 150]from matplotlib import pyplot as pltplt.plot( X1 , Y1 , color = "green" , marker = "o" , linestyle = "solid")plt.show()X2 = [80, 100, 120, 140, 160, 180, 200]Y2 = [70, 65, 90, 95, 110, 115, 120]plt.plot( X2 , Y2 , color = "green" , marker = "o" , linestyle = "solid")plt.show()
回答:
有两种方法:
快速且简单的方法;在每个图表中设置你想要的x和y范围。
plt.xlim(60,200)plt.ylim(60,200)
(例如)。只需在两个plt.show()之前粘贴这两行,它们就会相同。
更难但更好的一种方法是使用子图。
# 创建一个图形对象 fig = plt.figure()# 在图形中创建两个轴,并将它们排列在1x2的网格上ax1 = fig.add_subplot(121)# ax2是第二组轴,所以它是1x2的,第二个图表(因此是122)# 这种方式它们不会有相同的范围,因为它们被设置为单独的对象,而在你的例子中它们是每次都被重新使用的同一个对象!ax2 = fig.add_subplot(122)ax1.plot(X1,Y1)ax2.plot(X2,Y2)