我有问题,似乎无法解决。我有一个使用scipys griddata插值的网格值。这些值已显示为热图,其值为[0,1]。现在我想为值1/2绘制过渡线。
这可能吗?我的第一个想法是从grid_z中提取对应1/2的坐标并使用坐标线图,但我不知道该怎么做。
提前谢谢。
编辑:通过
解决xInd, yInd = np.where(np.logical_and(grid_z.T > 0.49, grid_z.T < 0.51))
然后绘制线条!
答案 0 :(得分:3)
您可以使用contour()
:
import numpy
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
x = numpy.linspace(0, 2*numpy.pi, 200)
y = numpy.linspace(0, 2*numpy.pi, 200)
xx, yy = numpy.meshgrid(x, y)
z = numpy.sin(xx) * numpy.cos(yy)
fig = plt.figure()
s = fig.add_subplot(1, 1, 1)
s.imshow(z, vmin=0, vmax=1)
s.contour(z, levels=[0.5])
fig.savefig('t.png')