问题描述
我正在尝试使用时间线图表显示下面图表中具有不同高度的每一行(Y 轴)。代码:
import plotly.express as px
import pandas as pd
df = pd.DataFrame([dict(Task="Task1",Start='2017-01-01',Finish='2017-02-15',Phase ='Phase1',Height=0.50),dict(Task="Task1",Start='2017-02-15',Finish='2017-03-15',Phase ='Phase2',dict(Task="Task2",Start='2017-01-17',Finish='2017-02-17',Height=0.2),Start='2017-02-18',Finish='2017-03-17',Phase ='Phase3',Height=0.20),dict(Task="Task3",Start='2017-03-10',Finish='2017-03-31',Height=1.0),Start='2017-04-01',Finish='2017-05-20',Start='2017-05-18',Finish='2017-06-18',dict(Task="Task4",Start='2017-01-14',Finish='2017-03-14',Phase ='Phase4',Height=0.4)])
colors = {'Shadow': 'rgb(237,125,49)','Rev Shadow': 'rgb(0,255,100)','KA': 'rgb(68,114,196)','Enablement': 'rgb(150,150,150)'}
fig = px.timeline(df,y = 'Task',x_start='Start',x_end = 'Finish',color= 'Phase',color_discrete_sequence=px.colors.qualitative.D3)
fig.update_layout(autosize=False,width=800,height=300)
fig.show()
Timeline chart with correct colors,but same height
能否请您帮助说明如何增加/减少每个条的高度。请注意,一行(任务)中的所有单个条形都将具有相同的高度。 此外,我可以将 px.timeline 中的颜色参数更改为“任务”并运行以下命令,这将按照我想要的方式更改“高度”。但是,这将使整行(任务)具有相同的颜色。我得到了我想要的高度,但在这种情况下没有得到颜色......
请帮助并提前致谢!!
fig = px.timeline(df,color= 'Task',height=300)
for i,d in enumerate(fig.data):
d.width = df[df['Task']==d.name]['Height']
Timeline chart with correct height,but same color for each task
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)