gpt4 book ai didi

image - matplotlib imshow() 具有不规则间隔的数据点

转载 作者:行者123 更新时间:2023-12-03 16:55:27 26 4
gpt4 key购买 nike

我正在尝试将一些数据放入 imshow() 图中。
我的问题是数据不是 MxN 数组,而是 3xN 数组(x 和 y 坐标和值)。这些点不是按规则网格排列的,而是位于 [xmin,xmax,ymin 和 ymax]=[-pi/2,pi/2,0,3.5] 内。

In [117]: shape(data)
Out[117]: (3L, 102906L)

如何从该数据中获得漂亮的图像图?
非常感谢您的帮助。

顺便说一句,数据表示作为轴向和方位角位置函数的杆表面温度值,想想 cfd 网格。

最佳答案

我建议使用 griddata-method 进行插值。一个样本是:

import numpy as np
from matplotlib.mlab import griddata
import matplotlib.pyplot as plt

xs0 = np.random.random((1000)) * np.pi - np.pi/2
ys0 = np.random.random((1000)) * 3.5
zs0 = np.random.random((1000))

N = 30j
extent = (-np.pi/2,np.pi/2,0,3.5)

xs,ys = np.mgrid[extent[0]:extent[1]:N, extent[2]:extent[3]:N]

resampled = griddata(xs0, ys0, zs0, xs, ys)

plt.imshow(resampled.T, extent=extent)
plt.plot(xs0, ys0, "r.")
plt.plot(xs, ys, "b.")
plt.title("imshow for irregularly spaced data using griddata")
plt.show()

我想从你的 3*X 阵列过渡到三个 X 阵列是显而易见的。

结果是:

Sample

红点表示数据的“原始”位置,蓝点表示现在规则间隔的数据。

griddata 返回一个掩码数组。无法评估插值的所有点都被屏蔽,然后绘制为白色区域。

哈,
托尔斯滕

关于image - matplotlib imshow() 具有不规则间隔的数据点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14120222/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com