сюжетные экспресс-графики имеют выцветшие цвета

#python #jupyter-notebook #plotly #plotly-express

#python #jupyter-ноутбук #plotly #plotly-express

Вопрос:

У меня возникли проблемы с plotly express в Jupyter notebook. Цвета в сюжете выцветшие и не соответствуют цветам в легенде, на которые они должны быть похожи. У кого-нибудь есть какие-либо предложения? Рад предоставить больше информации, но я не уверен, что было бы полезно — я все еще новичок в Python.

введите описание изображения здесь

 fig = px.bar(funded_apps_mask_kewt, x='Grant Expended CY Quarter', y='Grant 
Expended Amount', color='AMI Status',title='Long-Form Input')
fig.update_xaxes(categoryorder='category ascending')
fig.show()


AMI Statu | Grant Exp | Grant Exp Q | Grant Exp Q | Grant Exp Year | Grant Exp QY
0 Very Low (50%)    20086.72 Q4 2020    Q4              2020           2020 Q4
1 Urgent Need (120%)20086.7  Q4 2020    Q4              2020           2020 Q4
2 Urgent Need (120%)20086.72 Q4 2020    Q4              2020           2020 Q4
3 Very Low (50%)    20086.72 Q4 2020    Q4              2020           2020 Q4
4 Low (80%)         20086.72 Q4 2020    Q4              2020           2020 Q4
5 Low (80%)         20086.72 Q4 2020    Q4              2020           2020 Q4
6 Low (80%)         20086.72 Q4 2020    Q4              2020           2020 Q4
82Low (80%)         35602.75 Q1 2021    Q1              2021           2021 Q1
 

Вот как выглядят мои данные. Я изменил имена столбцов, чтобы они соответствовали, но я использовал столбцы «Статус AMI», «Предоставить Exp» и «Предоставить Exp QY». В нем ~ 7 тыс. строк.

Комментарии:

1. Это довольно странно. Это не то поведение, которое я ожидал бы, если непрозрачность каким-то образом не была установлена. Можете ли вы включить образец вашего фрейма данных, чтобы мы могли попытаться воспроизвести вашу проблему?

2. @DeReKo Я отредактировал сообщение с образцом данных. Спасибо!

3. Обновление — когда я использую выборку данных с 10 строками, цвет не исчезает — это происходит только при использовании большого количества строк.

4. Обновление — я смог исправить, используя groupby (), чтобы создать новый фрейм данных с суммами ‘Grant Exp’ по ‘Grant Exp QY’ и ‘AMI Status’. Это удалило белые линии из тысяч блоков данных, из-за которых цвета казались светлее, и мой новый фрейм данных составлял всего около 30 строк. Когда было так много точек данных, белые границы создавали эту проблему и заставляли цвета казаться выцветшими.

5. Ах, теперь это имеет смысл! Вы должны опубликовать то, что вы сделали, в качестве ответа, а затем принять свой собственный ответ, чтобы люди с подобной проблемой тоже могли ее решить 🙂

Ответ №1:

Это связано с контуром полосы, который можно удалить, установив marker.line.width для атрибута значение 0 :

 fig.update_traces(dict(marker_line_width=0))
 

Комментарии:

1. У меня такая же проблема, но почему это вдруг происходит? Я давно использую Plotly, но раньше я его не видел. Должен ли я делать это во всех ноутбуках Jupyter в будущем?

2. Добавление этого до fig.show() сработало для меня, спасибо за исправление