Python 向matplotlib等高线图添加十字线或标记
我正在使用matplotlib将NumPy阵列绘制为等高线图:Python 向matplotlib等高线图添加十字线或标记,python,python-2.7,matplotlib,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.ma
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)
我该怎么做呢?如果你知道位置,你可以简单地画十字
[row, col] = numpy.where(array==np.max(array))
plt.plot(col, row, 'b+')
更改标记大小。我添加了代码,使用6个增量为xs和ys垂直线和水平线显示b+标记的十字线
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()
您可以使用您选择的标记在该点进行绘图,或者使用
axvline
和axhlin
创建指向轴边缘的交叉线。@tcaswell我不熟悉语法(由于某些原因找不到)。你知道或有链接吗?很好,现在如何添加垂直和水平线到这一点