我一直在尝试使用Python(Jupyter Notebook)中的plot.ly 创建等高线图。该数据集包含 X 轴 366 个单位和 Y 轴 216 个单位。因此,X 轴和 Y 轴分别显示从 0 到 365 和 0 到 215 的值。
- 我想标记 X 轴以显示 12 个月的等距名称。即,一月、二月、..、十二月和 Y 轴仅显示标记为 -30、0 和 30 的 3 个点。
- 我想创建一条穿过最大值点的线。
我怎样才能做到这些?
到目前为止我所做的是:
fig = [
go.Contour(
z=data_set,
colorscale=[[0, 'rgb(204,229,255)'], [0.15, 'rgb(153,204,255)'],
[0.3, 'rgb(102,178,255)'], [1, 'rgb(0,51,102)']]
)]
py.iplot(fig)
其中z是366x216数据点列表的列表(即z内有366个列表,每个列表包含216个值)。我得到的 plotly 如下:plot
最佳答案
我发现自定义标签的第一个问题可以按如下方式完成:
hy = 216/2.0
hx = 366/12.0
layout=dict(
xaxis=dict(
tickvals=[(2*k-1)*hx/2 for k in range(1,13)],
ticktext=['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec',]
),
yaxis=dict(
tickvals=[k*hy for k in range(3)],
ticktext=[-30, 0, 30]
)
)
但是,我仍然不知道如何进行第二个。
关于python - 在 Python 中的绘图中创建自定义刻度标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44016069/