import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(1,5,20)
y = np.linspace(1,5,20)
[X, Y] = np.meshgrid(x, y)
Z = X**3+Y**3
ax = plt.axes()
contours = plt.contour(X,Y,Z, 3, colors='black')
plt.clabel(contours,fmt = '%2.2f', inline=True)
plt.contourf(X,Y,Z, 100, cmap='plasma',alpha=1.0)
ax.set_xlabel('X')
ax.set_ylabel('Y')
plt.colorbar();
plt.show()
上面的代码给出了Z的等值线图,其中等值线的数量由用户定义。然而,它所取的Z值是通过使用plt.contour函数中的数字自动确定的。在这段代码中,我想要的是Z的值应该是用户定义的(例如Z=70标记的轮廓),并且应该只显示该特定Z的一个轮廓。请帮帮我
2条答案
按热度按时间cngwdvgl1#
您可以将contour_levels数组传递为:
myss37ts2#
您可以执行以下操作:
您需要传递一个列表,其中仅包含所需的轮廓值。
完整代码:
输出:
您也可以使用任意数量的轮廓来执行此操作。
例如