gpt4 book ai didi

python - Plotly(Dash)刻度标签覆盖

转载 作者:太空狗 更新时间:2023-10-30 02:39:16 27 4
gpt4 key购买 nike

我无法获得以下内容来绘制刻度标签

self.months = [2017-01-01', 2017-02-01', ...]



def plot_bar(self):
print self.data
app.layout = html.Div(children=[html.H1(children=''), html.Div(children='Discovered monthly'),
dcc.Graph(
figure=go.Figure(
data = self.data,
layout=go.Layout(
title='Streams', showlegend=True, barmode='stack', margin=go.Margin(l=200, r=0, t=40, b=20),
xaxis=dict(tickvals = self.months, ticktext = self.months, title='months')
)
),
style={'height': 300},
id='my-graph')
])

所以基本上我有条形图的数字表示,但是当我更改刻度值和刻度标签时,这些数字标签会消失,但是我看不到预期的日期。我是否缺少显示这些标签的开关?

最佳答案

tickvals 需要是刻度所在的 x 轴的实际值,而不是标签。不知道您的实际数据是什么样的,这里是一个调整后的示例,其中包含一些虚构的数据:

self.months = ['2017-01-01', '2017-02-01', '2017-03-01']
self.data = [
{'x': [0, 1, 2], 'y': [4, 1, 2], 'type': 'bar', 'name': 'SF'},
{'x': [0, 1, 2], 'y': [2, 4, 5], 'type': 'bar', 'name': u'Montréal'},
]

# X-Axis location for the ticks
self.tickvals = [0, 1, 2]

def plot_bar(self):
app.layout = html.Div(children=[html.H1(children=''), html.Div(children='Discovered monthly'),
dcc.Graph(
figure=go.Figure(
data = self.data,
layout=go.Layout(
title='Streams', showlegend=True, barmode='stack', margin=go.Margin(l=200, r=0, t=40, b=20),
xaxis=dict(tickvals = self.tickvals, ticktext = self.months, title='months')
)
),
style={'height': 300},
id='my-graph')
])

注意这如何将 2017-01-01 映射到相应的值 02017-02-0112017-03-01 到 x 轴上的 2。我可以省略 2017-02-01(因此 self.tickvals 中的 1)以防产生太多标签或选择任意值,例如 1.5 来绘制我的标签。当我们谈论条形图时,后一个示例缺乏有用的应用。

关于python - Plotly(Dash)刻度标签覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44945228/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com