Plotly:没有重叠填充颜色的填充图

时间:2021-05-25 12:34:21

标签: python plotly data-visualization plotly-python

enter image description here

在图中,由于fill = 'tonexty',绿线填充到从0(在x轴上)到它们的交点的红线,从而重叠了红色和蓝色填充。然后,紫色线填充自己,直到绿色线与红色和蓝色重叠。如何防止这些重叠?

我希望绿线仅在红线上方时填充。紫色线填充自己直到它遇到的下一个最上面的线,这里是绿色和红色

作为参考,我希望它看起来像这样-

enter image description here

这是重现情节的代码-

import pandas as pd
import plotly.graph_objects as go

df = pd.DataFrame({'x': [0,1,2,3,4],
 'y1': [0,3,7,9,17],
 'y2': [0,5,8,11,21],
 'y3': [0,0,0,15,25],
 'y4': [0,10,20,30,40]})

fig = go.Figure()
fig.add_scatter(x=df.x, y=df.y1, fill='tozeroy', name='y1')
fig.add_scatter(x=df.x, y=df.y2, fill='tonexty', name='y2')
fig.add_scatter(x=df.x, y=df.y3, fill='tonexty', name='y3')
fig.add_scatter(x=df.x, y=df.y4, fill='tonexty', name='y3')
fig.update_xaxes(nticks=5)
fig.show()

这有点类似于this question。但我不想填充在两行之间,而是在一行和可能遇到的许多其他行之间填充(所有与其相邻的行)。

0 个答案:

没有答案
相关问题