我使用以下代码绘制以原点为中心的单位半径圆:
fig =plt.figure(figsize=(10,7))
x = np.linspace(-5.0, 5.0, 100)
y = np.linspace(-5.0, 5.0, 100)
X, Y = np.meshgrid(x,y)
F = X**2 + Y**2 - 1
plt.contour(X,Y,F,[0])
plt.show()
我现在想用蓝色来遮住圆圈内的区域。这怎么可能呢?
另外,如何将x轴和y轴添加到此绘图并标记这些轴?
我使用以下代码绘制以原点为中心的单位半径圆:
fig =plt.figure(figsize=(10,7))
x = np.linspace(-5.0, 5.0, 100)
y = np.linspace(-5.0, 5.0, 100)
X, Y = np.meshgrid(x,y)
F = X**2 + Y**2 - 1
plt.contour(X,Y,F,[0])
plt.show()
我现在想用蓝色来遮住圆圈内的区域。这怎么可能呢?
另外,如何将x轴和y轴添加到此绘图并标记这些轴?
1条答案
按热度按时间jgovgodb1#
要对轮廓区域进行着色,可以使用
plt.contourf()
. 您需要提供至少两个级别,以便在这两个级别之间着色,例如使用非常小的值和零。该函数接受显式的颜色列表(或者可以使用颜色Map)。ax.spines['left'].set_position('center')
可以将y轴设置为x的零点,而不是边界处的默认位置。ax.set_ylabel('y', loc='top')
在顶部设置y标签(默认值位于中心)。请注意,python的符号数学包
sympy
在不需要创建网格的情况下执行类似的操作。(改变颜色似乎有点复杂。
plot1._backend.ax[0].patches[0].set_facecolor('skyblue')
是一种可能性,但使用私有变量。)