python - Python 中的 plt.contour

标签 python matplotlib

我想在给定 3 个相同大小的 numpy 数组的情况下绘制 2D 等高线图 X Y Z 的坐标为 (X,Y),Z 为 (X,Y) 处的值。

现在,函数 plt.contour 似乎仅适用于网格以及网格交叉处的值,并且仅将矩形网格作为输入,并仅以 2D 矩阵作为输入。

参见http://matplotlib.org/examples/pylab_examples/contour_demo.html

如果该函数的输入是 (XX,YY,ZZ),则 XX 是一个二维矩形数组,其中每行相同且每列恒定,而 YY 是一个二维矩形数组,其中每列都相同,并且每条线都是恒定的。

现在,如果我想在输入值不是网格上的值时绘制等高线图,我应该使用什么函数,或者应该遵循什么程序?

谢谢

最佳答案

尝试使用plt.tricontour:http://matplotlib.org/api/pyplot_api.html?highlight=tricontour#matplotlib.pyplot.tricontour

它在非结构化三角形网格上绘制轮廓。

小例子:

import numpy as np
import matplotlib.pyplot as plt
x = np.random.rand(100)
y = np.random.rand(100)
z = x**2+np.sin(y)*y
f, ax = plt.subplots(1,1)
ax.tricontour(x,y,z)
ax.plot(x,y, 'r. ')
plt.show()

enter image description here

关于python - Python 中的 plt.contour,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37639849/

相关文章:

python - Python在比较int和float时什么时候进行类型转换?

python - pandas 和列表理解的速度问题

python - 为什么 pyplot.contour() 要求 Z 是二维数组?

python - 从 matplotlib 中显示的图中获取数据并将其传递给概率密度函数

python - 将 pandas 条形图的图例与次要 y 轴放在条形图前面

python - 如何打印全年日历(2019)

python - 如何从 Python 为内置 WSGI 服务器启用 SSL?

python - mlab.griddata 错误?

python - 当 slider 更新 matplotlib 时绘图不刷新

python - 如何将 for 循环输出写入 csv 文件?