我正在尝试绘制两个 3d 数组:第一个在范围[-0.15, 0.15]
中有 (z( 值,第二个来自[-0.001, 0.001]
.当我打印时,色阶会自动跟随数据范围:如何设置自定义比例?我不想看到 0.001 的浅色,而应该是 0.15。如何修复秤?
我分享下面的部分代码:
import numpy as np
import matplotlib.pyplot as plt
import plotly.graph_objects as go
data1=np.load("test.npy")
fig = go.Figure(data=[go.Surface(z=data1,colorscale="viridis")])
fig.update_layout(margin = dict(t=100,r=100,b=100,l=100),
scene = dict(zaxis = dict(range=[-0.15,0.15],)),
showlegend = False,
width = 1000, height = 1000,
autosize = False )
fig.update_layout(scene = dict(
xaxis_title='x',
yaxis_title='y',
zaxis_title='z'))
fig.write_image("image.pdf")
fig.show()
我只是在情节API参考中查找了Surface
需要什么样的参数。在那里,我看到了cmin
,cmax
和cmix
。您可以设置这些设置以告知 Surface 色阶的最小值、最大值和中点应位于何处。在您的情况下,只需将 cmin 和 cmax 设置为适合您的用例的值:
go.Surface(z=data1, colorscale="viridis", cmin=-0.15, cmax=0.15)
例如