使用 Plotly 在 Python 中创建克里金图


克里金图是一种地图,它使用不同的颜色或阴影来显示地理区域上的数据以表示值。数据通常以颜色刻度表示,较深的颜色表示较高的值,较浅的颜色表示较低的值。克里金图可用于在地图上可视化数据,例如人口统计数据、选举结果或经济指标。

Plotly 是一个 Python 数据可视化库,允许用户创建交互式绘图和图表。它提供了一系列用于创建自定义可视化的功能,包括折线图、散点图、条形图和克里金图。Plotly 广泛应用于数据科学、金融和学术界。

在本教程中,我们将讨论如何使用 Plotly(一个流行的 Python 数据可视化库)创建克里金图。

步骤 1:安装 Plotly

在我们可以开始使用 Plotly 创建克里金图之前,我们需要安装该库。我们可以在终端中使用以下命令来实现:

pip install plotly 

步骤 2:加载数据

创建克里金图的下一步是将数据加载到 Pandas DataFrame 中。在下面的示例中,我们将使用 Gapminder 数据集,其中包含不同国家/地区在一段时间内的人均预期寿命、人均 GDP 和人口数据。

import pandas as pd
import plotly.express as px
df = px.data.gapminder() 

px.data.gapminder() 函数将 Gapminder 数据集加载到 Pandas DataFrame 中。DataFrame 包含 1952 年至 2007 年间每个国家/地区的数据。

步骤 3:创建克里金图

下一步是使用 Plotly Express 中的克里金图函数创建克里金图。

fig = px.choropleth(df, locations="iso_alpha",
   color="gdpPercap",
   hover_name="country",
   animation_frame="year",
   projection="natural earth") 

px.choropleth() 函数使用 DataFrame df 创建克里金图。locations 参数指定 DataFrame 中包含 ISO 3166-1 alpha-3 国家/地区代码的列。

color 参数指定 DataFrame 中包含将由颜色表示的数据的列。在本例中,我们使用 gdpPercap 列,其中包含人均 GDP 数据。

hover_name 参数指定 DataFrame 中包含国家/地区名称的列,当用户将鼠标悬停在地图上的国家/地区时,将显示这些名称。

animation_frame 参数指定将用于创建动画克里金图的 DataFrame 中的列。在本例中,我们使用 year 列。最后,projection 参数指定要使用的地图投影类型。在本例中,我们使用“自然地球”投影。

步骤 4:显示克里金图

最后一步是使用 show 函数显示克里金图。

fig.show() 

这将在 Plotly 可视化窗口中显示克里金图,如下所示:

Plotly 允许用户以各种方式自定义克里金图。以下是一些示例:

更改颜色刻度

Plotly 使用的默认颜色刻度是从蓝色到红色的渐变。但是,用户可以使用 color_continuous_scale 参数将其更改为他们喜欢的任何颜色方案。例如,以下代码将颜色刻度更改为绿色颜色方案:

fig = px.choropleth(
    df, locations="iso_alpha",
    color="gdpPercap", hover_name="country",
    animation_frame="year", projection="natural earth",
    color_continuous_scale=px.colors.sequential.Greens
) 

这将在 Plotly 可视化窗口中显示克里金图,如下所示:

添加颜色条

color_continuous_scale 参数还允许用户向克里金图添加颜色条。颜色条显示地图上每种颜色所代表的值范围。要添加颜色条,请将 color_continuous_scale 参数设置为颜色刻度,并将 color_continuous_midpoint 参数设置为数据范围内的值。例如:

fig = px.choropleth(df, locations="iso_alpha",
   color="gdpPercap",
   hover_name="country",
   animation_frame="year",
   projection="natural earth",
   color_continuous_scale=px.colors.sequential.Greens,
   color_continuous_midpoint=10000)
fig.update_layout(coloraxis_colorbar=dict(title="GDP per Capita")) 

color_continuous_midpoint 参数设置颜色刻度的中点,即对应于颜色条中中间颜色的值。update_layout 函数用于自定义颜色条。在本例中,我们将颜色条的标题设置为“人均 GDP”。

这将在 Plotly 可视化窗口中显示克里金图,如下所示:

添加标题和标签

用户可以使用 title、xaxis_titleyaxis_title 参数向克里金图添加标题和标签。例如:

fig = px.choropleth(df, locations="iso_alpha",
   color="gdpPercap",
   hover_name="country",
   animation_frame="year",
   projection="natural earth",
   color_continuous_scale=px.colors.sequential.Greens,
   color_continuous_midpoint=10000,
   title="GDP per Capita by Country (1952-2007)",
   labels={"gdpPercap": "GDP per Capita", "year": "Year"})
fig.update_layout(title_x=0.5) 

这将在 Plotly 可视化窗口中显示克里金图,如下所示:

title 参数设置克里金图的标题,labels 参数设置 X 轴和 Y 轴的标签。update_layout 函数用于自定义绘图的布局。在本例中,我们使用 title_x 参数将标题的水平对齐方式设置为居中。

结论

使用 Plotly 创建克里金图是一个简单的过程,它提供了一种极好的方法来直观地表示数据。通过遵循本教程中概述的指南,用户可以创建信息丰富、视觉吸引力强且根据其特定需求定制的克里金图。

克里金图是呈现数据的一种极好的方式,对于研究人员、数据分析师以及定期处理地理数据的其他人来说,它是一个必不可少的工具。

更新于:2024-02-22

457 次浏览

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告

© . All rights reserved.