Python matplotlib默认绘制轴外曲线?

0tdrvxhp  于 2022-12-13  发布在  Python
关注(0)|答案(2)|浏览(168)

如果应用了matplotlib.pyplot.xlim,Python matplotlib默认情况下是否在轴外绘图?
这是我写的代码。

import matplotlib.pyplot as plt
import numpy as np

plt.figure()
x = np.linspace(-10, 10, 11)
y = x**2
plt.plot(x, y)
plt.xlim((-5, 5))

这是我得到的:enter image description here
这就是我想要的:enter image description here
我使用的是带有Spyder IDE的matplotlib版本3.5.3。

g52tjvyc

g52tjvyc1#

“clip_on”似乎设置为“False”。
出图时尝试将其设定为“True”:

plt.plot(x, y, clip_on = True)

另一个选择是在绘图前剪切x和y:

import matplotlib.pyplot as plt
import numpy as np
plt.figure()
x = np.linspace(-10, 10, 11)
y = x**2
mask = np.logical_and(np.less_equal(x,5), np.greater_equal(x,-5))
new_x = x[mask]
new_y = y[mask]
plt.plot(new_x, new_y, clip_on=False) #clip_on=False just for demonstration
plt.xlim((-5, 5))

这样,即使'clip_on'设置为'False',网格之外也不会有数据。
matplotlib documentation for 'clip_on'.

egdjgwm8

egdjgwm82#

我通过更新anaconda中的所有库解决了这个问题:

conda update --all

和禁用Spyder中的内嵌图形生成。

相关问题