我一直在使用 plot.ly 并希望将多个跟踪分组到图例中的同一个键。我有子图显示有关特定用户的数据。我想让每个键代表一个用户,而不是 user.data1、user.data2 等。
这是我现在所拥有的一个例子:
我想将所有 1 分组到他们自己的密钥中,所有 2 分组到他们自己的密钥中,所有 3 分组到他们自己的密钥中。
我的代码的这一部分展示了我目前如何进行跟踪
trace1_A = go.Scatter(x=file1.a, y=file1.b, name='1') #plot1
trace1_B = go.Scatter(x=file1.c, y=file1.d, name='1') #plot2
trace1_C = go.Scatter(x=file1.e, y=file1.f, name='1') #plot3
trace1_D = go.Scatter(x=file1.g, y=file1.h, name='1') #plot4
Run Code Online (Sandbox Code Playgroud)
我想legendgroup这就是你正在寻找的:
trace1_A = go.Scatter(x=file1.a, y=file1.b, name='1', legendgroup='1') #plot1
trace1_B = go.Scatter(x=file1.c, y=file1.d, name='1', legendgroup='1') #plot2
trace1_C = go.Scatter(x=file1.e, y=file1.f, name='1', legendgroup='1') #plot3
trace1_D = go.Scatter(x=file1.g, y=file1.h, name='1', legendgroup='1') #plot4
...
Run Code Online (Sandbox Code Playgroud)
这是我的解决方案的最终视图,添加legendgroup, marker=dict(color=''),以及showlegend引导我达到预期的结果。
trace1_A = go.Scatter(x=file1.a, y=file1.b, name='1', legendgroup='1', marker=dict(color='red'))
trace1_B = go.Scatter(x=file1.c, y=file1.d, name='1', legendgroup='1', marker=dict(color='red'), showlegend=False)
trace1_C = go.Scatter(x=file1.e, y=file1.f, name='1', legendgroup='1', marker=dict(color='red'), showlegend=False)
trace1_D = go.Scatter(x=file1.g, y=file1.h, name='1', legendgroup='1', marker=dict(color='red'), showlegend=False)
trace2_A = go.Scatter(x=file2.a, y=file2.b, name='2', legendgroup='2', marker=dict(color='blue'))
trace2_B = go.Scatter(x=file2.c, y=file2.d, name='2', legendgroup='2', marker=dict(color='blue'), showlegend=False)
trace2_C = go.Scatter(x=file2.e, y=file2.f, name='2', legendgroup='2', marker=dict(color='blue'), showlegend=False)
trace2_D = go.Scatter(x=file2.g, y=file2.h, name='2', legendgroup='2', marker=dict(color='blue'), showlegend=False)
trace3_A = go.Scatter(x=file3.a, y=file3.b, name='3', legendgroup='3', marker=dict(color='green'))
trace3_B = go.Scatter(x=file3.c, y=file3.d, name='3', legendgroup='3', marker=dict(color='green'), showlegend=False)
trace3_C = go.Scatter(x=file3.e, y=file3.f, name='3', legendgroup='3', marker=dict(color='green'), showlegend=False)
trace3_D = go.Scatter(x=file3.g, y=file3.h, name='3', legendgroup='3', marker=dict(color='green'), showlegend=False)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
873 次 |
| 最近记录: |