如何在x值的间隔上创建图

时间:2019-02-10 15:44:04

标签: python matplotlib

我想在matplotlib中创建一个绘图,x值的原始范围是0-70,但我希望放大[30-40]范围。实质上在单独的图中放大了该范围。

2 个答案:

答案 0 :(得分:1)

您可以做两个单独的绘图,例如

import matplotlib.pyplot as plt

x=[10,20,30,40,50,60,70] #for example
y=[1,2,3,4,5,6,7]

fig, ax = plt.subplots(1,2)
ax[0].plot(x,y) # original plot
ax[1].plot(x,y) # second plot
ax[1].set_xlim(30,40) # set a limit on x-axis, is like a zoom
plt.show()

然后你得到

enter image description here

答案 1 :(得分:0)

除了其他答案,您可能还想知道如何使用图中的插图突出显示某些特定的曲线范围。在这里,plt.axes([.2, .5, .3, .3])中的前两个值以相对坐标(0至1)定义插入图形轴的起点,而后两个值(.3,.3)定义x长度和y长度你的插图再次。可以控制将插图放置在感兴趣的位置。

import matplotlib.pyplot as plt

fig, ax = plt.subplots(figsize=(8,6))

x = range(70)
plt.plot(x,x)

ax2 = plt.axes([.2, .5, .3, .3])
ax2.plot(x,x)
ax2.set_xlim(30, 40)
ax2.set_title('Zoomed')
plt.show()

enter image description here