【问题标题】:Surface plot with matplotlib, Python使用 matplotlib、Python 绘制曲面图
【发布时间】:2015-10-27 18:43:52
【问题描述】:

我有一个nx3 数组,我们称之为data,我希望前两列是xy 坐标,第三列是与@ 关联的z 坐标987654327@和y坐标在同一行。

我现在想绘制一个曲面图,其中曲面与所有 z 坐标相交。

我看过this 的帖子,但想不通。

我知道我可以使用 matplotlib 的 Axes3Dfig.gca(projection='3d') 并且它需要 3 个 nxn 数组,我认为 XY 数组可以使用 X,Y = np.meshgrid(data[:,0],data[:,1]) 获得,但我是如果每个xy 仅关联1 个Z 坐标,则不确定如何获取nxn Z 数组。

然后,我想平滑表面,因为我确信只有几个数据点的表面看起来很难看,我只是想代表数据的一般形状,具体值不太重要.那么,有没有办法在二维数据点之间进行插值以平滑图形?

示例数据集:

data = np.array([[4260,150,116]
                 [4204,149,1070]
                 [4204,188,470]
                 [4444,140,389]
                 [3255,149,69]
                 [6370,149,1109]
                 [5765,189,3531]])

【问题讨论】:

    标签: python matplotlib plot


    【解决方案1】:

    试试这样:

    x, y, z = data[:,0], data[:,1], data[:,2]
    grid_x, grid_y = np.mgrid[min(x):max(x):50j, min(y):max(y):50j]
    z = griddata((x, y), z, (grid_x, grid_y), method='cubic')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-17
      • 2023-03-09
      • 1970-01-01
      • 1970-01-01
      • 2021-10-26
      • 1970-01-01
      • 2020-06-16
      相关资源
      最近更新 更多