只有一行颜色的多线图。

问题描述 投票:1回答:1

我如何制作一个交互式多线图,其中只有一条线是彩色的,而其他线都是灰色的。

所以在这里,我希望美国是红色的,而其他国家是灰色的。这是我目前所做的。

import pandas as pd
import plotly.express as px

df = px.data.gapminder()
fig = px.line(df, x='year', y='pop', color="country", hover_name="country",color_discrete_map={'United States': 'Red'})
fig.update_layout(autosize=False,width=700,height=500)
fig.show()

但它只改变了悬停的颜色,而不是线条的颜色。

我试着把美国单独绘制成自己的图,然后更新到原来的图,但效果不理想。

python-3.x plotly plotly-python
1个回答
3
投票

你可以随时编辑你的 fig 直接用for循环得到这个。

enter image description here

完整的代码。

import pandas as od
import plotly.express as px

df = px.data.gapminder()
fig = px.line(df, x='year', y='pop', color="country", hover_name="country")

# edit colors
for d in fig['data']:
    if d['name'] == 'United States':
        d['line']['color']='red'
    else:
        d['line']['color']='lightgrey'

fig.show()
© www.soinside.com 2019 - 2024. All rights reserved.