[英]How to create 3d scatter plot
精通Plotly,請幫幫我。 我有一個帶高度的矩陣。 我需要使用 Scatter 構建 go.Surface 的模擬。 如果這不可能,則在曲面圖上標記點(頂點)。 所有這些都是更好地確定頂點所必需的。 謝謝你。
import plotly.graph_objects as go
import pandas as pd
import numpy as np
z_data = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/api_docs/mt_bruno_elevation.csv')
fig = go.Figure()
fig.add_trace(go.Surface(z=z_data.values))
#fig.add_trace(go.Scatter3d(z=z_data.values))
fig.update_layout(title='Mt Bruno Elevation', autosize=False,
width=500, height=500,
margin=dict(l=65, r=50, b=65, t=90))
fig.show()
類似於這個
我對 3D 圖沒有太多經驗。 我根據您的數據創建了一個散點圖 3D,我將數據框的列分配給 y 軸,將數據框的行分配給 x 軸,將 z 軸轉換為數據框元素的一維列表並繪制它。 這是否符合問題的意圖?
import plotly.graph_objects as go
import pandas as pd
import numpy as np
z_data = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/api_docs/mt_bruno_elevation.csv',index_col=0)
x_tmp = z_data.index.tolist()
xx = [[t]*24 for t in x_tmp]
xx = sum(xx, [])
y_tmp = z_data.columns.tolist()
yy = [int(t) for t in y_tmp]
yy = yy * 25
fig = go.Figure()
fig.add_trace(go.Scatter3d(x=xx, y=yy,
z=sum(z_data.values.tolist(),[]),
mode='markers',
marker=dict(size=2)))
#fig.add_trace(go.Scatter3d(z=z_data.values))
fig.update_layout(title='Mt Bruno Elevation', autosize=True,
width=800, height=800,
margin=dict(l=65, r=50, b=65, t=90))
fig.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.