Plotly:如何更改 3D 曲面图的配色方案?
Posted
技术标签:
【中文标题】Plotly:如何更改 3D 曲面图的配色方案?【英文标题】:Plotly: How to change the colour scheme of a 3D surface plot? 【发布时间】:2021-05-08 16:58:42 【问题描述】:我想在 plotly python 中更改 3D 曲面图的配色方案。 Plotly 默认分配配色方案,如下图所示。
这是我的代码
import import plotly.graph_objects as go
import pandas as pd
data = pd.read_csv('\Data.csv')
data.set_index("years", inplace = True)
figure = go.Figure(data=[go.Surface(z=data.values)])
figure.update_layout(
scene = dict(
xaxis = dict(
title = 'Months',
#nticks = 5,
autorange='reversed',
showgrid=True,
gridwidth=1,
gridcolor='Blue',
ticktext = data.columns,
tickvals= list(range(0,data.shape[1]))),
yaxis = dict(
title = 'years',
showgrid=True,
gridwidth=1,
gridcolor='Blue',
ticktext = data.index,
tickvals= list(range(0,data.shape[0]))),
zaxis = dict(
title = 'Discharge (Cumecs)',
#showgrid=True,
gridwidth=1,
gridcolor='Blue')),
tilte = 'Plot 1'
)
【问题讨论】:
我觉得this answer 很有帮助。 【参考方案1】:您可以通过colorscale
in 轻松更改配色方案
go.Surface(colorscale ='<color>')
这是一个使用colorscale='Blues
的示例:
fig = go.Figure(data=[go.Surface(z=z_data.values, colorscale ='Blues')])
情节
您的色阶选项是(但不一定限于):
Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis。
示例代码:
import plotly.graph_objects as go
import pandas as pd
# Read data from a csv
z_data = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/api_docs/mt_bruno_elevation.csv')
fig = go.Figure(data=[go.Surface(z=z_data.values, colorscale ='Blues')])
fig.update_layout(title='Mt Bruno Elevation', autosize=False,
width=500, height=500,
margin=dict(l=65, r=50, b=65, t=90))
f = fig.full_figure_for_development(warn=False)
fig.show()
【讨论】:
非常感谢...作为一个新手,我错过了很多简单的事情... @AsifMarazi 新手与否,以我的拙见,您在 SO 上的开端非常。您问了一个问题,该问题没有一个很容易用谷歌搜索(虽然不确定这是否是一个词=)答案,并且您提供了一个几乎可重现的代码 sn-p。这比我们在这里的大多数新手看到的要多。但更重要的是,您通过评论和接受建议的解决方案提供快速反馈,证明了您的问题的答案对您的价值高于零。继续努力,您将在这里学到很多。回头见! 抱歉,回复延迟...我目前非常热衷于学习编程,当然需要您的帮助...感谢您的赞赏...以上是关于Plotly:如何更改 3D 曲面图的配色方案?的主要内容,如果未能解决你的问题,请参考以下文章
如何转换 Excel 导入的数据以使用 Plotly 3D 曲面图?
为啥 plot_ly in plotly 绘制曲面图的 id 列?
R语言plotly可视化:plotly可视化回归面(plane)使用mesh3d和add_surface实现三维回归曲面