r语言绘制动态统计图:绘制世界各国的人均GDP,出生时的预期寿命和人口气泡图动画动态gif图|附代码数据

发布时间 2023-04-17 23:58:40作者: 拓端tecdat

全文链接:http://tecdat.cn/?p=7994

最近我们被客户要求撰写关于绘制动态统计图的研究报告,包括一些图形和统计输出。

nations.csv 来自世界银行指标的数据

使用的数据

  • warming.csv 有关1880年至2017年全球年平均温度 。

  • year

  • value 全球平均温度,与1900-2000年的平均温度相比。

  •     `simulations.csv`美国国家航空航天局(NASA)对历史温度的模拟数据,估计了自然和人为因素对气候的影响, 包含以下变量:
    
  • year

  • type 自然还是人为影响因素

  • value 来自模拟的全球平均温度,相对于1990-2000年的平均模拟值。

  •     `charts` 空文件夹,我们将在其中保存要制作动画的各个帧。
    

配置

启动RStudio,创建一个新的RScript,然后通过选择将工作目录设置为包含下载数据的文件夹Session>Set Working Directory>To Source File Location

安装

加载我们今天将使用的软件包

# 加载需要的软件包

library(readr)

library(ggplot2)

library(dplyr)

气泡图

我们制作了以下图表,显示了2016年世界各国的人均GDP,出生时的期望寿命和人口:

图片


点击标题查阅往期内容

图片

动态图可视化:如何、创建具有精美动画图

图片

左右滑动查看更多

图片

01

图片

02

图片

03

图片

04

图片

这是生成该图表的代码:

# 读取数据

nations <- read_csv("nations.csv")



# 过滤 2016 年的数据 

nations2016 <- nations %>%

  filter(year == 2016)



# 绘制泡泡图

ggplot(nations2016, aes(x = gdp_percap, y = life_expect)) +

  xlab("GDP per capita") +

  ylab("Life expectancy at birth") +

  theme_minimal(base_size = 12, base_family = "Georgia") +

  geom_point(aes(size = population, color = region), alpha = 0.7) +

  scale_size_area(guide = FALSE, max_size = 15) +

  scale_x_continuous(labels = dollar) +

  stat_smooth(formula = y ~ log10(x), se = FALSE, size = 0.5, color = "black", linetype="dotted") +

  scale_color_brewer(name = "", palette = "Set2") +

  theme(legend.position=c(0.8,0.4))
  •     `scale_size_area`确保圆的大小根据人口数据按其面积缩放, 。
    
  •     `labels  `将X轴标签的格式。
    
  •     `stat_smooth`的工作方式类似,`geom_smooth `允许 使用`formula`来指定用于拟合数据趋势线的曲线类型,此处为对数曲线。
    

现在,我们将生成1990年至2016年图表的动画。这是代码:

现在,Viewer通过运行以下命令将其显示在面板中:

animate(nations_plot)

代码的工作方式

  • transition_time此功能通过来对数据进行动画处理year,仅显示与任何一个时间点相关的数据。除了每年生成一个帧外,它还生成中间帧以提供平滑的动画。

  • "{frame_time}"ggtitle函数内使用会在每个帧上放置一个标题,并带有transition_time函数中变量此处的相应值year

  • ease_aes控制动画的进行方式。

  • enter_fade ,exit_fade这些功能控制动画中数据点出现或消失的行为。您也可以使用enter_shrinkexit_shrink

另存为GIF和视频

现在,我们可以将动画另存为GIF或视频

您可以使用选项widthheight设置动画的尺寸(以像素为单位)。fps设置GIF的帧速率,以每秒帧数为单位。

要制作视频,您需要代码renderer = ffmpeg_renderer(),这需要在系统上安装FFmpeg。上面的视频代码还将宽高比设置为16:9 。

这是GIF:

图片



图片

点击文末 “阅读原文”

获取全文完整资料。

本文选自《r语言绘制动态统计图:绘制世界各国的人均GDP,出生时的预期寿命和人口气泡图动画动态gif图》。

点击标题查阅往期内容

R语言对布丰投针(蒲丰投针)实验进行模拟和动态可视化生成GIF动画
R语言在BRFSS数据中可视化分析探索糖尿病的影响因素
数据可视化分析案例:探索BRFSS电话调查数据
R语言随机森林RandomForest、逻辑回归Logisitc预测心脏病数据和可视化分析
R语言计算资本资产定价模型(CAPM)中的Beta值和可视化
R语言主成分分析(PCA)葡萄酒可视化:主成分得分散点图和载荷图
R语言时变向量自回归(TV-VAR)模型分析时间序列和可视化
R语言样条曲线、决策树、Adaboost、梯度提升(GBM)算法进行回归、分类和动态可视化
R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化
R语言对布丰投针(蒲丰投针)实验进行模拟和动态可视化生成GIF动画
R语言信用风险回归模型中交互作用的分析及可视化
R语言生存分析可视化分析
R语言线性回归和时间序列分析北京房价影响因素可视化案例
R语言用温度对城市层次聚类、kmean聚类、主成分分析和Voronoi图可视化
R语言动态可视化:绘制历史全球平均温度的累积动态折线图动画gif视频图
R语言动态图可视化:如何、创建具有精美动画的图
R语言中生存分析模型的时间依赖性ROC曲线可视化