【数据可视化】动态条形图Python代码实现

使用 Python 中的 bar_chart_race_cn 库创建动态条形图

前言

数据可视化在今天的数据分析和传达信息中起着至关重要的作用。动态条形图是一种强大的数据可视化工具,可以帮助我们展示随时间变化的数据趋势。本文将介绍如何使用 Python 编程语言中的 bar_chart_race_cn 库创建动态条形图。动态条形图可以用于展示各种数据,从股票价格的波动到体育比赛的得分变化,它们能够生动地呈现数据的演变,有助于更好地理解和分析信息。

在本文中,我们将深入探讨 bar_chart_race_cn 库的使用,以及如何准备数据、自定义图表样式以及创建动态条形图。我们还将介绍一些关键的 Python 库,如 pandasmatplotlib,它们在数据处理和图形绘制中扮演了重要的角色。

无论你是数据分析师、数据科学家还是对数据可视化感兴趣的任何人,本文都将帮助你学会创建引人注目的动态条形图,以更好地传达你的数据和见解。

准备工作

在创建动态条形图之前,我们需要做一些准备工作。以下是我们将使用的主要Python库以及它们的作用:

pandas

pandas 是一个强大的数据处理库,它提供了用于导入、操作和分析数据的数据结构和函数。我们将使用 pandas 来读取和处理我们的数据。

bar_chart_race_cn

bar_chart_race_cn 是一个Python库,它是 bar_chart_race 的中文版本,用于创建动态条形图。我们将使用它来制作我们的动态条形图。

matplotlib

matplotlib 是一个用于创建静态图形的Python库。虽然 bar_chart_race_cn 用于创建动态图表,但我们仍然需要 matplotlib 用于设置字体和样式,以确保图表中的中文文本正确显示。

用户选择要用于图表的列

在我们的代码中,首先我们要求用户选择用于创建动态条形图的列。这是为了让用户决定图表中的关键数据是什么,以及如何显示它们。以下是这部分的代码解释:

print("请选择用于图表的列:")
for i, col in enumerate(column_names):print(f"{i + 1}: {col}")category_index = int(input("选择类别列的索引 (1-{num_columns}): ")) - 1
value_index = int(input("选择值列的索引 (1-{num_columns}): ")) - 1
date_index = int(input("选择日期列的索引 (1-{num_columns}): ")) - 1

在这里,我们首先列出了数据框中的所有列供用户选择。然后,用户被要求输入用于类别、值和日期的列的索引。这些选择将决定动态条形图中的类别、值和时间维度。

读取CSV文件

接下来,我们读取一个CSV文件以获取我们的数据。这是通过以下代码完成的:

df = pd.read_csv('game_demo.csv')

这一行代码使用了 pandas 库中的 read_csv 函数,它将CSV文件读取到一个名为 df 的数据框中。这个数据框将包含我们用于创建动态条形图的数据。

设置中文字体和样式

在我们的代码中,我们希望图表中的中文文本显示正确,因此我们需要设置中文字体和样式。这是通过以下代码完成的:

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

这些行代码使用了 matplotlib 库的 rcParams 设置,将中文字体设置为SimHei,同时设置axes.unicode_minus为False,以解决负号显示问题。

创建动态图表

最后,我们使用 bar_chart_race_cn 库来创建动态条形图。以下是这一部分的代码解释:

bcr.bar_chart_race(df=df.pivot(index=date_column, columns=category_column, values=value_column),filename='test.mp4', n_bars=5, fixed_max=True,period_label={'x': .99, 'y': .25, 'ha': 'right', 'va': 'center'}, period_fmt='%Y',period_summary_func=lambda v, r: {'x': .99, 'y': .5,'s': f'Top 3: {v.nlargest(3).map("{:.2f}".format).to_string(index=False)}','ha': 'right', 'size': 8}, perpendicular_bar_func='median',title=f'{category_column} {value_column} 变化',shared_fontdict={'family': 'Microsoft YaHei'}, bar_kwargs={'alpha': .7},)

在这里,我们调用了 bar_chart_race_cn 库中的 bar_chart_race 函数,传递了多个参数,包括数据框、输出文件名、条形图的一些参数(如条形数量、是否使用固定的最大值等)、图表标签、标题、字体设置等等。

示例

为了更好地理解如何使用 bar_chart_race_cn 库创建动态条形图,让我们考虑一个示例。假设我们有一份包含每年不同城市的gdp数据的CSV文件,我们希望创建一个动态条形图来展示每个城市的人口随时间的变化。

首先,我们需要准备数据,选择城市作为类别列,gdp作为值列,日期作为日期列。接着,我们使用以下代码创建动态条形图:

# -*- coding = utf-8 -*-
"""
# @Time : 2023/9/16 17:00
# @Author : FriK_log_ff 374591069
# @File : region.py
# @Software: PyCharm
# @Function: 请输入项目功能
"""
import pandas as pd
import bar_chart_race_cn as bcr
import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False# 读取CSV文件
df = pd.read_csv('all_region.csv')# 自动获取列数和列名
num_columns = len(df.columns)
column_names = df.columns.tolist()# 用户选择要用于图表的列
print("请选择用于图表的列:")
for i, col in enumerate(column_names):print(f"{i + 1}: {col}")category_index = int(input("选择类别列的索引 (1-{num_columns}): ")) - 1
value_index = int(input("选择值列的索引 (1-{num_columns}): ")) - 1
date_index = int(input("选择日期列的索引 (1-{num_columns}): ")) - 1# 根据用户选择的列索引获取列名
category_column = column_names[category_index]
value_column = column_names[value_index]
date_column = column_names[date_index]
date_format = '%Y'
df[date_column] = pd.to_datetime(df[date_column], format=date_format)
# 设置参数# 创建动态图表
bcr.bar_chart_race(df=df.pivot(index=date_column, columns=category_column, values=value_column),filename='test.mp4', n_bars=5, fixed_max=True,period_label={'x': .99, 'y': .25, 'ha': 'right', 'va': 'center'}, period_fmt='%Y',period_summary_func=lambda v, r : {'x': .99, 'y': .5, 's': f'Top 3: {v.nlargest(3)}', 'ha': 'right', 'size': 8},perpendicular_bar_func='median',title=f'{category_column} {value_column} 变化',shared_fontdict={'family': 'Microsoft YaHei'}, bar_kwargs={'alpha': .7},
)

在这个示例中,我们首先读取了包含人口数据的CSV文件,并设置了中文字体和样式。然后,我们选择了类别列(城市)、值列(人口数量)和日期列,以便创建图表。最后,我们调用 bar_chart_race_cn 库来生成动态条形图,并指定输出文件名为population_race.mp4

这个示例展示了如何使用代码生成动态条形图,以可视化城市人口随时间的变化。读者可以根据自己的数据和需求来创建类似的动态图表。

在这里插入图片描述

country,gdp,year
北京市,41610.9,2022
北京市,41045.6,2021
北京市,35943.3,2020
北京市,35445.1,2019
北京市,33106,2018
北京市,29883,2017
北京市,27041.2,2016
北京市,24779.1,2015
北京市,22926,2014
北京市,21134.6,2013
北京市,19024.7,2012
北京市,17188.8,2011
北京市,14964,2010
北京市,12900.9,2009
北京市,11813.1,2008
北京市,10425.5,2007
北京市,8387,2006
北京市,7149.8,2005
北京市,6252.5,2004
北京市,5267.2,2003
天津市,16311.3,2022
天津市,15685.1,2021
天津市,14008,2020
天津市,14055.5,2019
天津市,13362.9,2018
天津市,12450.6,2017
天津市,11477.2,2016
天津市,10879.5,2015
天津市,10640.6,2014
天津市,9945.4,2013
天津市,9043,2012
天津市,8112.5,2011
天津市,6830.8,2010
天津市,5709.6,2009
天津市,5182.4,2008
天津市,4158.4,2007
天津市,3538.2,2006
天津市,3158.6,2005
天津市,2621.1,2004
天津市,2257.8,2003
河北省,42370.4,2022
河北省,40397.1,2021
河北省,36013.8,2020
河北省,34978.6,2019
河北省,32494.6,2018
河北省,30640.8,2017
河北省,28474.1,2016
河北省,26398.4,2015
河北省,25208.9,2014
河北省,24259.6,2013
河北省,23077.5,2012
河北省,21384.7,2011
河北省,18003.6,2010
河北省,15306.9,2009
河北省,14200.1,2008
河北省,12152.9,2007
河北省,10043,2006
河北省,8773.4,2005
河北省,7588.6,2004
河北省,6333.6,2003
山西省,25642.6,2022
山西省,22870.4,2021
山西省,17835.6,2020
山西省,16961.6,2019
山西省,15958.1,2018
山西省,14484.3,2017
山西省,11946.4,2016
山西省,11836.4,2015
山西省,12094.7,2014
山西省,11987.2,2013
山西省,11683.1,2012
山西省,10894.4,2011
山西省,8903.9,2010
山西省,7147.6,2009
山西省,7223,2008
山西省,5935.6,2007
山西省,4713.6,2006
山西省,4079.4,2005
山西省,3496,2004
山西省,2854.3,2003
内蒙古自治区,23158.6,2022
内蒙古自治区,21166,2021
内蒙古自治区,17258,2020
内蒙古自治区,17212.5,2019
内蒙古自治区,16140.8,2018
内蒙古自治区,14898.1,2017
内蒙古自治区,13789.3,2016
内蒙古自治区,12949,2015
内蒙古自治区,12158.2,2014
内蒙古自治区,11392.4,2013
内蒙古自治区,10470.1,2012
内蒙古自治区,9458.1,2011
内蒙古自治区,8199.9,2010
内蒙古自治区,7104.2,2009
内蒙古自治区,6242.4,2008
内蒙古自治区,5166.9,2007
内蒙古自治区,4161.8,2006
内蒙古自治区,3523.7,2005
内蒙古自治区,2942.4,2004
内蒙古自治区,2388.4,2003
辽宁省,28975.1,2022
辽宁省,27569.5,2021
辽宁省,25011.4,2020
辽宁省,24855.3,2019
辽宁省,23510.5,2018
辽宁省,21693,2017
辽宁省,20392.5,2016
辽宁省,20210.3,2015
辽宁省,20025.7,2014
辽宁省,19208.8,2013
辽宁省,17848.6,2012
辽宁省,16354.9,2011
辽宁省,13896.3,2010
辽宁省,12815.7,2009
辽宁省,12137.7,2008
辽宁省,10292.2,2007
辽宁省,8390.3,2006
辽宁省,7260.8,2005
辽宁省,6469.8,2004
辽宁省,5906.3,2003
吉林省,13070.2,2022
吉林省,13163.8,2021
吉林省,12256,2020
吉林省,11726.8,2019
吉林省,11253.8,2018
吉林省,10922,2017
吉林省,10427,2016
吉林省,10018,2015
吉林省,9966.5,2014
吉林省,9427.9,2013
吉林省,8678,2012
吉林省,7734.6,2011
吉林省,6410.5,2010
吉林省,5434.8,2009
吉林省,4834.7,2008
吉林省,4080.3,2007
吉林省,3226.5,2006
吉林省,2776.5,2005
吉林省,2455.2,2004
吉林省,2141,2003
黑龙江省,15901,2022
黑龙江省,14858.2,2021
黑龙江省,13633.4,2020
黑龙江省,13544.4,2019
黑龙江省,12846.5,2018
黑龙江省,12313,2017
黑龙江省,11895,2016
黑龙江省,11690,2015
黑龙江省,12170.8,2014
黑龙江省,11849.1,2013
黑龙江省,11015.8,2012
黑龙江省,9935,2011
黑龙江省,8308.3,2010
黑龙江省,7218.9,2009
黑龙江省,7134.2,2008
黑龙江省,6126.3,2007
黑龙江省,5329.8,2006
黑龙江省,4756.4,2005
黑龙江省,4134.7,2004
黑龙江省,3609.7,2003
上海市,44652.8,2022
上海市,43653.2,2021
上海市,38963.3,2020
上海市,37987.6,2019
上海市,36011.8,2018
上海市,32925,2017
上海市,29887,2016
上海市,26887,2015
上海市,25269.8,2014
上海市,23204.1,2013
上海市,21305.6,2012
上海市,20009.7,2011
上海市,17915.4,2010
上海市,15742.4,2009
上海市,14536.9,2008
上海市,12878.7,2007
上海市,10598.9,2006
上海市,9197.1,2005
上海市,8101.6,2004
上海市,6804,2003
江苏省,122875.6,2022
江苏省,117392.4,2021
江苏省,102807.7,2020
江苏省,98656.8,2019
江苏省,93207.6,2018
江苏省,85869.8,2017
江苏省,77350.9,2016
江苏省,71255.9,2015
江苏省,64830.5,2014
江苏省,59349.4,2013
江苏省,53701.9,2012
江苏省,48839.2,2011
江苏省,41383.9,2010
江苏省,34471.7,2009
江苏省,30945.5,2008
江苏省,25988.4,2007
江苏省,21240.8,2006
江苏省,18121.3,2005
江苏省,14823.1,2004
江苏省,12442.9,2003
浙江省,77715.4,2022
浙江省,74040.8,2021
浙江省,64689.1,2020
浙江省,62462,2019
浙江省,58002.8,2018
浙江省,52403.1,2017
浙江省,47254,2016
浙江省,43507.7,2015
浙江省,40023.5,2014
浙江省,37334.6,2013
浙江省,34382.4,2012
浙江省,31854.8,2011
浙江省,27399.9,2010
浙江省,22833.7,2009
浙江省,21284.6,2008
浙江省,18640,2007
浙江省,15302.7,2006
浙江省,13028.3,2005
浙江省,11482.1,2004
浙江省,9753.4,2003
安徽省,45045,2022
安徽省,42565.2,2021
安徽省,38061.5,2020
安徽省,36845.5,2019
安徽省,34010.9,2018
安徽省,29676.2,2017
安徽省,26307.7,2016
安徽省,23831.2,2015
安徽省,22519.7,2014
安徽省,20584,2013
安徽省,18341.7,2012
安徽省,16284.9,2011
安徽省,13249.8,2010
安徽省,10864.7,2009
安徽省,9517.7,2008
安徽省,7941.6,2007
安徽省,6500.3,2006
安徽省,5675.9,2005
安徽省,5129.1,2004
安徽省,4307.8,2003
福建省,53109.9,2022
福建省,49566.1,2021
福建省,43608.6,2020
福建省,42326.6,2019
福建省,38687.8,2018
福建省,33842.4,2017
福建省,29609.4,2016
福建省,26819.5,2015
福建省,24942.1,2014
福建省,22503.8,2013
福建省,20190.7,2012
福建省,17917.7,2011
福建省,15002.5,2010
福建省,12418.1,2009
福建省,10931.8,2008
福建省,9325.6,2007
福建省,7468.6,2006
福建省,6415.5,2005
福建省,5712.1,2004
福建省,4999.6,2003
江西省,32074.7,2022
江西省,29827.8,2021
江西省,25782,2020
江西省,24667.3,2019
江西省,22716.5,2018
江西省,20210.8,2017
江西省,18388.6,2016
江西省,16780.9,2015
江西省,15667.8,2014
江西省,14300.2,2013
江西省,12807.7,2012
江西省,11584.5,2011
江西省,9383.2,2010
江西省,7630,2009
江西省,6934.2,2008
江西省,5777.6,2007
江西省,4696.8,2006
江西省,3941.2,2005
江西省,3398.1,2004
江西省,2812.7,2003
山东省,87435.1,2022
山东省,82875.2,2021
山东省,72798.2,2020
山东省,70540.5,2019
山东省,66648.9,2018
山东省,63012.1,2017
山东省,58762.5,2016
山东省,55288.8,2015
山东省,50774.8,2014
山东省,47344.3,2013
山东省,42957.3,2012
山东省,39064.9,2011
山东省,33922.5,2010
山东省,29540.8,2009
山东省,27106.2,2008
山东省,22718.1,2007
山东省,18967.8,2006
山东省,15947.5,2005
山东省,13308.1,2004
山东省,10903.2,2003
河南省,61345.1,2022
河南省,58071.4,2021
河南省,54259.4,2020
河南省,53717.8,2019
河南省,49935.9,2018
河南省,44824.9,2017
河南省,40249.3,2016
河南省,37084.1,2015
河南省,34574.8,2014
河南省,31632.5,2013
河南省,28961.9,2012
河南省,26318.7,2011
河南省,22655,2010
河南省,19181,2009
河南省,17735.9,2008
河南省,14824.5,2007
河南省,11977.9,2006
河南省,10243.5,2005
河南省,8411.2,2004
河南省,6942.4,2003
湖北省,53734.9,2022
湖北省,50091.2,2021
湖北省,43004.5,2020
湖北省,45429,2019
湖北省,42022,2018
湖北省,37235,2017
湖北省,33353,2016
湖北省,30344,2015
湖北省,28242.1,2014
湖北省,25378,2013
湖北省,22590.9,2012
湖北省,19942.5,2011
湖北省,16226.9,2010
湖北省,13192.1,2009
湖北省,11497.5,2008
湖北省,9451.4,2007
湖北省,7531.8,2006
湖北省,6469.7,2005
湖北省,5546.8,2004
湖北省,4757.5,2003
湖南省,48670.4,2022
湖南省,45713.5,2021
湖南省,41542.6,2020
湖南省,39894.1,2019
湖南省,36329.7,2018
湖南省,33828.1,2017
湖南省,30853.5,2016
湖南省,28538.6,2015
湖南省,25881.3,2014
湖南省,23545.2,2013
湖南省,21207.2,2012
湖南省,18915,2011
湖南省,15574.3,2010
湖南省,12772.8,2009
湖南省,11307.4,2008
湖南省,9285.5,2007
湖南省,7431.6,2006
湖南省,6369.9,2005
湖南省,5542.6,2004
湖南省,4660,2003
广东省,129118.6,2022
广东省,124719.5,2021
广东省,111151.6,2020
广东省,107986.9,2019
广东省,99945.2,2018
广东省,91648.7,2017
广东省,82163.2,2016
广东省,74732.4,2015
广东省,68173,2014
广东省,62503.4,2013
广东省,57007.7,2012
广东省,53072.8,2011
广东省,45944.6,2010
广东省,39464.7,2009
广东省,36704.2,2008
广东省,31742.6,2007
广东省,25961.2,2006
广东省,21963,2005
广东省,18658.3,2004
广东省,15979.8,2003
广西壮族自治区,26300.9,2022
广西壮族自治区,25209.1,2021
广西壮族自治区,22120.9,2020
广西壮族自治区,21237.1,2019
广西壮族自治区,19627.8,2018
广西壮族自治区,17790.7,2017
广西壮族自治区,16116.6,2016
广西壮族自治区,14797.8,2015
广西壮族自治区,13587.8,2014
广西壮族自治区,12448.4,2013
广西壮族自治区,11303.6,2012
广西壮族自治区,10299.9,2011
广西壮族自治区,8552.4,2010
广西壮族自治区,7112.9,2009
广西壮族自治区,6455.4,2008
广西壮族自治区,5474.8,2007
广西壮族自治区,4417.8,2006
广西壮族自治区,3742.1,2005
广西壮族自治区,3305.1,2004
广西壮族自治区,2798.2,2003
海南省,6818.2,2022
海南省,6504.1,2021
海南省,5566.2,2020
海南省,5330.8,2019
海南省,4910.7,2018
海南省,4497.5,2017
海南省,4090.2,2016
海南省,3734.2,2015
海南省,3449,2014
海南省,3115.9,2013
海南省,2789.4,2012
海南省,2463.8,2011
海南省,2020.5,2010
海南省,1620.3,2009
海南省,1474.7,2008
海南省,1234,2007
海南省,1027.5,2006
海南省,884.9,2005
海南省,802.7,2004
海南省,714,2003
重庆市,29129,2022
重庆市,28077.3,2021
重庆市,25041.4,2020
重庆市,23605.8,2019
重庆市,21588.8,2018
重庆市,20066.3,2017
重庆市,18023,2016
重庆市,16040.5,2015
重庆市,14623.8,2014
重庆市,13027.6,2013
重庆市,11595.4,2012
重庆市,10161.2,2011
重庆市,8065.3,2010
重庆市,6651.2,2009
重庆市,5899.5,2008
重庆市,4770.7,2007
重庆市,3900.3,2006
重庆市,3448.4,2005
重庆市,3059.5,2004
重庆市,2615.6,2003
四川省,56749.8,2022
四川省,54088,2021
四川省,48501.6,2020
四川省,46363.8,2019
四川省,42902.1,2018
四川省,37905.1,2017
四川省,33138.5,2016
四川省,30342,2015
四川省,28891.3,2014
四川省,26518,2013
四川省,23922.4,2012
四川省,21050.9,2011
四川省,17224.8,2010
四川省,14190.6,2009
四川省,12756.2,2008
四川省,10562.1,2007
四川省,8494.7,2006
四川省,7195.9,2005
四川省,6304,2004
四川省,5346.2,2003
贵州省,20164.6,2022
贵州省,19458.6,2021
贵州省,17860.4,2020
贵州省,16769.3,2019
贵州省,15353.2,2018
贵州省,13605.4,2017
贵州省,11792.4,2016
贵州省,10541,2015
贵州省,9173.1,2014
贵州省,7973.1,2013
贵州省,6742.2,2012
贵州省,5615.6,2011
贵州省,4519,2010
贵州省,3856.7,2009
贵州省,3504.5,2008
贵州省,2847.5,2007
贵州省,2264.1,2006
贵州省,1939.9,2005
贵州省,1649.4,2004
贵州省,1429,2003
云南省,28954.2,2022
云南省,27161.6,2021
云南省,24555.7,2020
云南省,23223.8,2019
云南省,20880.6,2018
云南省,18486,2017
云南省,16369,2016
云南省,14960,2015
云南省,14041.7,2014
云南省,12825.5,2013
云南省,11097.4,2012
云南省,9523.1,2011
云南省,7735.3,2010
云南省,6574.4,2009
云南省,6016.6,2008
云南省,5077.4,2007
云南省,4090.7,2006
云南省,3497.7,2005
云南省,3136.4,2004
云南省,2633.4,2003
西藏自治区,2132.6,2022
西藏自治区,2080.2,2021
西藏自治区,1902.7,2020
西藏自治区,1697.8,2019
西藏自治区,1548.4,2018
西藏自治区,1349,2017
西藏自治区,1173,2016
西藏自治区,1043,2015
西藏自治区,939.7,2014
西藏自治区,828.2,2013
西藏自治区,710.2,2012
西藏自治区,611.5,2011
西藏自治区,512.9,2010
西藏自治区,445.7,2009
西藏自治区,398.2,2008
西藏自治区,344.1,2007
西藏自治区,285.9,2006
西藏自治区,243.1,2005
西藏自治区,217.9,2004
西藏自治区,186,2003
陕西省,32772.7,2022
陕西省,30121.7,2021
陕西省,26014.1,2020
陕西省,25793.2,2019
陕西省,23941.9,2018
陕西省,21473.5,2017
陕西省,19045.8,2016
陕西省,17898.8,2015
陕西省,17402.5,2014
陕西省,15905.4,2013
陕西省,14142.4,2012
陕西省,12175.1,2011
陕西省,9845.2,2010
陕西省,7997.8,2009
陕西省,7177.8,2008
陕西省,5681.8,2007
陕西省,4595.6,2006
陕西省,3817.2,2005
陕西省,3141.6,2004
陕西省,2587.7,2003
甘肃省,11201.6,2022
甘肃省,10225.5,2021
甘肃省,8979.7,2020
甘肃省,8718.3,2019
甘肃省,8104.1,2018
甘肃省,7336.7,2017
甘肃省,6907.9,2016
甘肃省,6556.6,2015
甘肃省,6518.4,2014
甘肃省,6014.5,2013
甘肃省,5393.1,2012
甘肃省,4816.9,2011
甘肃省,3943.7,2010
甘肃省,3268.3,2009
甘肃省,3071.7,2008
甘肃省,2675.1,2007
甘肃省,2203,2006
甘肃省,1864.6,2005
甘肃省,1653.6,2004
甘肃省,1399.9,2003
青海省,3610.1,2022
青海省,3385.1,2021
青海省,3009.8,2020
青海省,2941.1,2019
青海省,2748,2018
青海省,2465.1,2017
青海省,2258.2,2016
青海省,2011,2015
青海省,1847.7,2014
青海省,1713.3,2013
青海省,1528.5,2012
青海省,1370.4,2011
青海省,1144.2,2010
青海省,939.7,2009
青海省,896.9,2008
青海省,720.1,2007
青海省,585.2,2006
青海省,499.4,2005
青海省,443.7,2004
青海省,385,2003
宁夏回族自治区,5069.6,2022
宁夏回族自治区,4588.2,2021
宁夏回族自治区,3956.3,2020
宁夏回族自治区,3748.5,2019
宁夏回族自治区,3510.2,2018
宁夏回族自治区,3200.3,2017
宁夏回族自治区,2781.4,2016
宁夏回族自治区,2579.4,2015
宁夏回族自治区,2473.9,2014
宁夏回族自治区,2327.7,2013
宁夏回族自治区,2131,2012
宁夏回族自治区,1931.8,2011
宁夏回族自治区,1571.7,2010
宁夏回族自治区,1266.7,2009
宁夏回族自治区,1139.2,2008
宁夏回族自治区,877.6,2007
宁夏回族自治区,683.3,2006
宁夏回族自治区,579.9,2005
宁夏回族自治区,519.9,2004
宁夏回族自治区,442.6,2003
新疆维吾尔自治区,17741.3,2022
新疆维吾尔自治区,16311.6,2021
新疆维吾尔自治区,13800.7,2020
新疆维吾尔自治区,13597.1,2019
新疆维吾尔自治区,12809.4,2018
新疆维吾尔自治区,11159.9,2017
新疆维吾尔自治区,9630.8,2016
新疆维吾尔自治区,9306.9,2015
新疆维吾尔自治区,9264.5,2014
新疆维吾尔自治区,8392.6,2013
新疆维吾尔自治区,7411.8,2012
新疆维吾尔自治区,6532,2011
新疆维吾尔自治区,5360.2,2010
新疆维吾尔自治区,4237,2009
新疆维吾尔自治区,4142.5,2008
新疆维吾尔自治区,3500,2007
新疆维吾尔自治区,2957.3,2006
新疆维吾尔自治区,2520.5,2005
新疆维吾尔自治区,2170.4,2004
新疆维吾尔自治区,1889.2,2003

总结

本文介绍了如何使用 Python 编程语言中的 bar_chart_race_cn 库创建动态条形图。以下是我们在本文中学到的关键要点:

  1. 数据可视化的重要性:数据可视化是理解和传达数据的强大工具,动态条形图可以生动地展示数据随时间的变化趋势,有助于更深入地理解信息。

  2. 准备工作:在创建动态条形图之前,我们需要准备数据。本文介绍了使用 pandas 库读取和处理数据,以及设置中文字体和样式以确保中文文本正确显示。

  3. 创建动态图表:使用 bar_chart_race_cn 库,我们可以轻松地创建动态条形图。我们了解了如何设置图表参数,包括条形数量、固定最大值、图表标签、标题等。

  4. 示例:本文还提供了一个示例,展示了如何创建动态条形图以可视化城市人口随时间的变化。这个示例可作为参考,帮助读者开始制作自己的动态图表。

无论你是数据分析师、数据科学家还是对数据可视化感兴趣的任何人,本文提供了一个简单而强大的工具,帮助你创建引人注目的动态数据可视化图表。通过合理利用这些技能,你可以更好地传达数据和见解,为你的数据分析工作增色不少。

结语

数据可视化是数据分析的关键部分,动态条形图为我们提供了一种生动而强大的方式来展示数据。在这篇文章中,我们学习了如何使用 bar_chart_race_cn 库创建动态条形图,以及如何准备数据和设置样式。希望本文能够帮助你更好地利用数据可视化来分析和传达信息。如果你有任何问题或需要进一步的帮助,请随时与我们联系。

接下来,你可以继续完善文章的其他部分,如添加更多示例、绘制更多图表,或者根据读者反馈进行修改和优化。希望这篇文章能对你的读者有所帮助!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/134421.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据库安全(Mysql,Hadoop,Redis)

MySQL Mysql 身份认证绕过漏洞(CVE-2012-2122) 当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较,由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。也就…

flask要点与坑

简介 Flask是一个用Python编写的Web应用程序框架,该框架简单易用、模块化、灵活性高。 该笔记主要记录Flask的关键要点和容易踩坑的地方 Flask 日志配置 Flask 中的自带logger模块(也是python自带的模块),通过简单配置可以实现…

周易算卦流程c++实现

代码 #include<iostream> using namespace std; #include<vector> #include<cstdlib> #include<ctime> #include<Windows.h>int huaYiXiangLiang(int all, int& left) {Sleep(3000);srand(time(0));left rand() % all 1;while (true) {if…

【React】React入门

目录 一、何为React二、React与传统MVC的关系三、React的特性1、声明式编程①、实现标记地图 2、高效灵活3、组件式开发(Component)①、函数式组件②、类组件&#xff08;有状态组件&#xff09;③、一个组件该有的特点 4、单向式响应的数据流 四、虚拟DOM1、传统DOM更新①、举…

【ubuntu】修改系统及硬件时间

Linux系统时间分为两种&#xff1a;系统时间&#xff08;S有stem Clock&#xff09;和硬件&#xff08;Realtime Clock&#xff0c;简称RTC&#xff09;时间。 上网找了好多教程&#xff0c;每次修改完后&#xff0c;不到几秒钟&#xff0c;时间又恢复成之前的时间了。 -------…

pytorch代码实现之动态卷积模块ODConv

ODConv动态卷积模块 ODConv可以视作CondConv的延续&#xff0c;将CondConv中一个维度上的动态特性进行了扩展&#xff0c;同时了考虑了空域、输入通道、输出通道等维度上的动态性&#xff0c;故称之为全维度动态卷积。ODConv通过并行策略采用多维注意力机制沿核空间的四个维度…

VUE之proxy配置实现跨域

什么是跨域 要了解跨域&#xff0c;首先得知道浏览器的同源策略。 同源策略&#xff1a;是由Netscape提出的一个安全策略&#xff0c;能够阻挡恶意文档&#xff0c;保护本地数据。它能限制一个源的文档或脚本对另一个源的交互&#xff0c;使得其它源的文档或脚本&#xff0c;…

火山引擎 ByteHouse:ClickHouse 如何保证海量数据一致性

背景 ClickHouse是一个开源的OLAP引擎&#xff0c;不仅被全球开发者广泛使用&#xff0c;在字节各个应用场景中也可以看到它的身影。基于高性能、分布式特点&#xff0c;ClickHouse可以满足大规模数据的分析和查询需求&#xff0c;因此字节研发团队以开源ClickHouse为基础&…

docker 已经配置了国内镜像源,但是拉取镜像速度还是很慢(gcr.io、quay.io、ghcr.io)

前言 国内用户在使用 docker 时&#xff0c;想必都遇到过镜像拉取慢的问题&#xff0c;那是因为 docker 默认指向的镜像下载地址是 https://hub.docker.com&#xff0c;服务器在国外。 网上有关配置 docker 国内镜像源的教程很多&#xff0c;像 腾讯、阿里、网易 等等都会提供…

前后端跨域请求问题解决方法

如图&#xff1a; 1.在config配置包中创建一个CorsConfig配置类 2.将下面代码复制到这个类中即可 import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.cors.CorsConfigurati…

华为云云耀云服务器L实例评测|服务器反挖矿防护指南

前言 本文为华为云云耀云服务器L实例测评文章&#xff0c;测评内容是 云耀云服务器L实例 反挖矿防护指南 系统配置&#xff1a;2核2G 3M CentOS7.9 之前的文章中『一文教你如何防御数据库恶意攻击』&#xff0c;我们讲到黑客如何通过攻击数据库来获取权限&#xff0c;以及我们…

Java面试常用函数

1. charAt() 方法用于返回字符串指定索引处的字符。索引范围为从 0 到 length() - 1。 map.getOrDefault(num, 0) :如果map存在num这个key&#xff0c;则返回num对应的value&#xff0c;否则返回0. Arrays.sort(nums); 数组排序 Arrays.asList("a","b",&q…

详细解释HiveSQL执行计划

一、前言 Hive SQL的执行计划描述SQL实际执行的整体轮廓&#xff0c;通过执行计划能了解SQL程序在转换成相应计算引擎的执行逻辑&#xff0c;掌握了执行逻辑也就能更好地把握程序出现的瓶颈点&#xff0c;从而能够实现更有针对性的优化。此外还能帮助开发者识别看似等价的SQL其…

java 封装一个将String类型转Long类型的函数

Long是一种超大类型的数字变量类型 但java无法直接生成这种数据 但我们可以封装一个函数 public Long getuniid(String number) {Long longNumber Long.parseLong(number);return longNumber; }这样 我们就可以传入一个字符串 然后将其转换为 long 然后我们调用这个函数 Sys…

向日葵无法连接服务器(无法登录)

最近在使用向日葵过程中&#xff0c;突然就不能登录向日葵了&#xff0c;网上查了各种解决方案&#xff0c;比如说防火墙是不是把向日葵给拦截了&#xff1f;更换不同的版本等等&#xff0c;都无法解决&#xff0c;最后突然想到是不是电脑对向日葵原安装目录限制了&#xff1f;…

虚拟化技术:深入浅出

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

PY32F003F18之输入捕获

输入捕获是定时器的功能之一&#xff0c;配合外部引脚&#xff0c;捕获脉宽时间或采集周期。 CPU中的定时器最基本的功能就是计数功能&#xff0c;其次是输入捕获(IC)&#xff0c;再次就是比较输出(OC)&#xff0c;还有就是使用引脚对外部时钟进行计数&#xff0c;触发信号捕捉…

关于阿里云服务器Ubuntu编译jdk8中遇到的坑及解决方案

关于阿里云服务器Ubuntu系统安装jdk8中遇到的坑及解决方案 记录一下困扰了很多天、到处查资料最后终于成功安装的过程 关于阿里云服务器无法登录的问题 基本反馈是这样的&#xff1a; 如果你添加了ip之后仍然登不进去&#xff0c;有一种方法是直接从第三个选项进去登录之后修…

JWT安全

文章目录 JWT是什么&#xff1f;为什么要使用JWT&#xff1f;JWT的数据结构JWT的工作过程 JWT是什么&#xff1f; JSON Web Token (JWT)是一个开放标准(RFC 7519)&#xff0c;它定义了一种紧凑的、自包含的方式&#xff0c;用于作为JSON对象在各方之间安全地传输信息。 JWT全称…

《Python趣味工具》——自制emoji2(2)

今天&#xff0c;我们将会完成以下2个内容&#xff1a; 绘制静态emoji总结turtle中常用的绘图函数 文章目录 一、绘制静态emoji&#xff1a;:sparkles: 画脸&#xff1a;:sparkles:绘制嘴巴&#xff1a;:sparkles:绘制眼白&#xff1a;绘制眼白-Part1&#xff1a;绘制眼白—pa…