将十字准线或标记添加到matplotlib等高线图中

时间:2014-09-10 15:23:58

标签: python python-2.7 matplotlib

我正在使用matplotlib绘制NumPy数组作为等高线图:

import numpy as np
import matplotlib.pyplot as plt

plt.contour(array, linewidths = 1, colors = 'k')
plt.contourf(array, cmap = plt.cm.jet)
plt.colorbar()
plt.show()

我想添加一个'十字准线'或其他标记来表示数组中的最大值:

maxi = np.max(array)

我该怎么做呢?

感谢。

2 个答案:

答案 0 :(得分:3)

如果你知道位置,你可以简单地绘制十字架。

[row, col] = numpy.where(array==np.max(array))
plt.plot(col, row, 'b+')

答案 1 :(得分:0)

我添加了代码来显示 b+ 标记的十字准线,对 xs 和 ys 垂直和水平线使用 6 个增量

b1=1.8027335249990852
xs=[4]*6
ys=np.linspace(0,int(4*b1),6)
ys2=[int(4*b1)]*6
xs2=np.linspace(0,4,6)

plt.plot(xs, ys,'k-', linestyle = ":", lw=1)
plt.plot(xs2, ys2,'k-', linestyle = ":", lw=1)
plt.plot(4, 4*b1, 'b+')
plt.show()