我有一个
它生成的图表是
。
我已尝试通过
根据下面的答案,我已经改变了代码。
但是现在的坐标轴与实际的x和y值没有对应关系。图中的值从0到9和0到11分别表示x和y轴。我该如何设置校准?谢谢。
10x12
的数组,希望使用plotly
进行绘图。x轴的长度为10,y轴的长度为12。我期望绘图在x轴上有10的范围,在y轴
上有12的范围。但实际情况并非如此。在两个轴上都只得到了10。我已经提供了一个MWE来重现这个问题。import numpy as np
import plotly.graph_objects as go
data_array = np.empty((10, 12))
for i in range(10):
for j in range(12):
data_array[i, j] = i+j
x = np.linspace(1, 10, 10)
y = np.linspace(1, 12, 12)
fig = go.Figure(data=[go.Surface(z=data_array, x=x, y=y)])
fig.show()
它生成的图表是
![输入图像描述](https://istack.dev59.com/xcj9z.webp)
我已尝试通过
update_layout
设置range
,但这并未解决问题。import numpy as np
import plotly.graph_objects as go
data_array = np.empty((10, 12))
for i in range(10):
for j in range(12):
data_array[i, j] = i+j
x = np.linspace(1, 10, 10)
y = np.linspace(1, 12, 12)
fig = go.Figure(data=[go.Surface(z=data_array, x=x, y=y)])
fig.update_layout(scene=dict(xaxis=dict(range=[0, 10]),
yaxis=dict(range=[0, 12])))
fig.show()
尽管y轴范围现在从0到12,但是图表的那一部分并没有绘制任何内容。
我该如何解决这个问题?谢谢。根据下面的答案,我已经改变了代码。
import numpy as np
import plotly.graph_objects as go
data_array = np.empty((10, 12))
for idx1, i in enumerate(range(0, 50, 5)):
for idx2, j in enumerate(range(0, 24, 2)):
data_array[idx1, idx2] = (i+j) / (50+24)
x = np.linspace(0, 45, 10)
y = np.linspace(0, 22, 12)
fig = go.Figure(data=[go.Surface(z=data_array.T)])
fig.show()
但是现在的坐标轴与实际的x和y值没有对应关系。图中的值从0到9和0到11分别表示x和y轴。我该如何设置校准?谢谢。
x=np.linspace(1, 50, 10)
和y=np.linspace(1, 24, 12)
。我该如何让这反映在绘图的坐标轴上? - learner