首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Plotly中创建三维曲面打印

在Plotly中创建三维曲面打印
EN

Stack Overflow用户
提问于 2021-10-19 05:42:36
回答 1查看 109关注 0票数 0

我想通过从外部文件读取数据,在Plotly中创建一个3D曲面图。下面是我使用的代码:

代码语言:javascript
复制
    import numpy as np
    import plotly.graph_objects as go 
    import plotly.express as px
    
    
    data = np.genfromtxt('values.dat', dtype=float)
    
    # The shape of X, Y and Z is (10,1)
    X = data[:,0:1] 
    Y = data[:,1:2]
    Z = data[:,2:3]
    
    fig = go.Surface(x=X, y=Y, z=Z, name='Surface plot', colorscale=px.colors.sequential.Plotly3)
    plot(fig)

上面的代码不会生成任何曲面图。必须进行哪些更改才能创建曲面打印?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-19 19:48:39

从plotly reference:

描述曲面坐标的数据在z中设置。z中的数据应该是2D列表。xy中的坐标可以是一维列表或{2D数组}

我有一个示例数据集。它包含三列(x,y,z)。

代码语言:javascript
复制
import plotly.graph_objects as go
import pandas as pd
import numpy as np
from scipy.interpolate import griddata


df = pd.read_csv('./test_data.csv')

x = np.array(df.lon)
y = np.array(df.lat)
z = np.array(df.value)


xi = np.linspace(x.min(), x.max(), 100)
yi = np.linspace(y.min(), y.max(), 100)

X,Y = np.meshgrid(xi,yi)

Z = griddata((x,y),z,(X,Y), method='cubic')



fig = go.Figure(go.Surface(x=xi,y=yi,z=Z))
fig.show()

参考页面:https://plotly.com/python/reference/surface/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69625661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档