2

我目前正在使用 plotly 和 Python 制作离散的等值线图。有没有办法在图例中的每种颜色周围添加边框/轮廓?到目前为止,我看到的大多数解决方案都只是解决标记的边界,这不是我想要的,因为这是一个等值线图。如果我更新标记的轨迹,它只会影响国家轮廓在地图上的外观,但根本不会改变图例。

我知道有一些方法可以更改图例的整体布局或向图例框整体添加轮廓,但我没有看到每个颜色/图例项目的轮廓上的任何内容。这是可能的,还是需要解决方法?

我的离散彩色等值线图代码类似于绘图库(https://plotly.com/python/choropleth-maps/#discrete-colors)中的代码:

import plotly.express as px

df = px.data.election()
geojson = px.data.election_geojson()

fig = px.choropleth(df, geojson=geojson, color="winner",
                    locations="district", featureidkey="properties.district",
                    projection="mercator", hover_data=["Bergeron", "Coderre", "Joly"]
                   )
fig.update_geos(fitbounds="locations", visible=False)
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()

现在,地图看起来像这样: 当前地图

但我想在图例中的每个彩色方块周围添加轮廓,有点像这张图片右侧的图例:

想要的图例

4

1 回答 1

0

如果您想要一个带有连续数据的离散图例,您可以在数据框中添加一个新列,其中包含您希望在图例中显示的内容的字符串表示形式。

例如,在下面的图片中,我在“REL”列中有数据作为数字,我希望图例以百分比显示间隔,所以我创建了一个新列,其范围以字符串形式写入,然后设置 px.choropleth(color="相对范围,...)

在此处输入图像描述

您可以为此使用 df.apply() 。检查本教程https://mahshadn.medium.com/animated-choropleth-map-with-discrete-colors-using-python-and-plotly-styling-5e208e5b6bf8

于 2022-02-19T20:56:50.450 回答