可视化GDP动态图表EXCEL也能搞定,前些天网上一个让无数中国人为之振奋的数据可视化图表视频,该视频展示了世界GDP排名前10的国家从1968年-2016年的GDP增长变化情况。
视频中,条形图随着年份的变化不断增长,各国的排名也在不停的切换,伴着激动人心的音乐,看着中国的排名不断上升,心中的自豪感油然而生,不禁高呼一声:「厉害了,我的国!」。
然而激动的心情刚刚平复,我就在琢磨一件事儿,这个图表怎么做的? 大家有没有和我一样的想法? 这个应该是用很高大上的软件做的吧?很遗憾,到现在我也不知道是什么软件。不过,别纠结,纠结是没办法解决问题滴,试试EXCEL能不能做出来吧!
于是就有了这个「山寨」版的动态图表,虽然山寨,但是我很用心哦!感兴趣的小伙伴跟我一起来看看如何实现这个效果的吧!
5大步骤就能搞定!我现在不太敢说「轻松」这两个字了,大家自己感受吧!
步骤一、构建图表数据
数据源来源于世界银行的数据网站(工作表Data直接从该网站下载获取)
绘制图表前,我们需要进行一些数据整理。
① 构建如上图所示表格,列出需要展示在图表中的10个国家名称。
② 在B1单元格录入数字「1960」。
③ 在B2单元格录入公式:=VLOOKUP(A2,Data!$A:$BJ,MATCH($B$1,Data!$A$1:$BJ$1,0),0),向下填充公式。该公式用来获取Data工作表中对应B1单元格中年份的各国的GDP数据。
④在C2单元格录入公式:
=IF(MID(C$1,FIND("-",C$1)+1,99)=$A2,$B2,NA()),向右向下填充。
从C列开始为辅助列。该公式用来获取对应辅助列国家的GDP数据,辅助列的作用是用来给每个国家固定着色。如果没有这些辅助数据,条形图的颜色会随着动态图表排序的变化而改变,这样中国就不能始终显示成红色了,唉,我是这么的爱国啊,为了让我们的大中国一直红下去,我也是拼了!
步骤二、插入条形图,美化图表。
①选择A2:B11区域插入条形图,并将系列名称改为「标签辅助」。
② 设置数据系列格式,系列重叠100%,分类间距30%。
③ 选择C1:L11区域复制粘贴到图表中,更改「系列 "辅助-中国"」颜色为红色。
④ 删除图例、网格线,修改图表区填充色,调整图表大小和位置。
⑤ 图表标题链接到B1单元格,并调字体、字号和位置。
⑥ 设置垂直类别轴格式,逆序类别,无线条,字体为微软雅黑,加粗。
⑦ 设置水平 (值) 轴格式,设置显示单位和数字格式。
⑧选择标签辅助系列添加标签,设置标签数字格式,调整绘图区大小到合适位置。
步骤三、复制代码到VBE编辑器
ALT+F11进入VBE编辑器,将下面代码复制进去即可。代码此处不做讲解,详情参见视频教程。
Sub 自动播放()
Dim i AsInteger, n As Long
For i = 0 To 57
[B1] =1960 + i
DoEvents
For n = 1To 1000
DoEvents
Application.Wait (Now + 0.000001)
Next n
Call 排序
Next i
End Sub
Sub 排序()
DoEvents
Range("a1:c11").Sort key1:=Range("b2"),order1:=xlDescending, Header:=xlYes, Orientation:=xlSortColumns
Application.Wait (Now + 0.000001)
End Sub
步骤四、绘制一个播放按钮并指定宏
插入形状→编辑文字→调整格式→指定宏
步骤五、保存测试
工作表保存为启动宏的工作簿(后缀名为.xlsm),否则下次打开代码丢失,图表就不会动了。
如果想要调整速度,修改代码中红色框框的数字大小即可,数字越大,播放速度越慢,反之则越快。
是不是想问怎么在PPT中做这样的动态图表?不用大费周章,录制一个GIF贴到PPT里就搞定了,此处不再赘述了,拜拜了,我们下期再见!
前些天网上流传着一个让无数中国人为之振奋的数据可视化图表视频,该视频展示了世界GDP排名前10的国家从1968年-2016年的GDP增长变化情况。
视频中,条形图随着年份的变化不断增长,各国的排名也在不停的切换,伴着激动人心的音乐,看着中国的排名不断上升,心中的自豪感油然而生,不禁高呼一声:「厉害了,我的国!」。
然而激动的心情刚刚平复,我就在琢磨一件事儿,这个图表怎么做的? 大家有没有和我一样的想法? 这个应该是用很高大上的软件做的吧?很遗憾,到现在我也不知道是什么软件。不过,别纠结,纠结是没办法解决问题滴,试试EXCEL能不能做出来吧!
于是就有了这个「山寨」版的动态图表,虽然山寨,但是我很用心哦!感兴趣的小伙伴跟我一起来看看如何实现这个效果的吧!
5大步骤就能搞定!我现在不太敢说「轻松」这两个字了,大家自己感受吧!
步骤一、构建图表数据
数据源来源于世界银行的数据网站(工作表Data直接从该网站下载获取)
绘制图表前,我们需要进行一些数据整理。
① 构建如上图所示表格,列出需要展示在图表中的10个国家名称。
② 在B1单元格录入数字「1960」。
③ 在B2单元格录入公式:=VLOOKUP(A2,Data!$A:$BJ,MATCH($B$1,Data!$A$1:$BJ$1,0),0),向下填充公式。该公式用来获取Data工作表中对应B1单元格中年份的各国的GDP数据。
④在C2单元格录入公式:
=IF(MID(C$1,FIND("-",C$1)+1,99)=$A2,$B2,NA()),向右向下填充。
从C列开始为辅助列。该公式用来获取对应辅助列国家的GDP数据,辅助列的作用是用来给每个国家固定着色。如果没有这些辅助数据,条形图的颜色会随着动态图表排序的变化而改变,这样中国就不能始终显示成红色了,唉,我是这么的爱国啊,为了让我们的大中国一直红下去,我也是拼了!
步骤二、插入条形图,美化图表。
①选择A2:B11区域插入条形图,并将系列名称改为「标签辅助」。
② 设置数据系列格式,系列重叠100%,分类间距30%。
③ 选择C1:L11区域复制粘贴到图表中,更改「系列 "辅助-中国"」颜色为红色。
④ 删除图例、网格线,修改图表区填充色,调整图表大小和位置。
⑤ 图表标题链接到B1单元格,并调字体、字号和位置。
⑥ 设置垂直类别轴格式,逆序类别,无线条,字体为微软雅黑,加粗。
⑦ 设置水平 (值) 轴格式,设置显示单位和数字格式。
⑧选择标签辅助系列添加标签,设置标签数字格式,调整绘图区大小到合适位置。
步骤三、复制代码到VBE编辑器
ALT+F11进入VBE编辑器,将下面代码复制进去即可。代码此处不做讲解,详情参见视频教程。
Sub 自动播放()
Dim i AsInteger, n As Long
For i = 0 To 57
[B1] =1960 + i
DoEvents
For n = 1To 1000
DoEvents
Application.Wait (Now + 0.000001)
Next n
Call 排序
Next i
End Sub
Sub 排序()
DoEvents
Range("a1:c11").Sort key1:=Range("b2"),order1:=xlDescending, Header:=xlYes, Orientation:=xlSortColumns
Application.Wait (Now + 0.000001)
End Sub
步骤四、绘制一个播放按钮并指定宏
插入形状→编辑文字→调整格式→指定宏
步骤五、保存测试
工作表保存为启动宏的工作簿(后缀名为.xlsm),否则下次打开代码丢失,图表就不会动了。
如果想要调整速度,修改代码中红色框框的数字大小即可,数字越大,播放速度越慢,反之则越快。
是不是想问怎么在PPT中做这样的动态图表?不用大费周章,录制一个GIF贴到PPT里就搞定了,插入PPT即可搞定可视化GDP动态图表PPT。