前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >图表案例——一个小小的图表所折射出的作图哲学

图表案例——一个小小的图表所折射出的作图哲学

作者头像
数据小磨坊
发布2018-04-11 14:55:22
1.1K0
发布2018-04-11 14:55:22
举报
文章被收录于专栏:数据小魔方

今天仍然是一个经济学人的图表案例,而且从方法上来讲,略有难度,挺费工夫。

原图上这样的,风格一如既往,呈现的数据是一个季度时间序列数据列,折线图,添加了时间趋势线。

最重要的特色是实际值与趋势值之间使用颜色带隔开,高于趋势值填充蓝色,低于趋势值填充红色。

不要小看这个小小的细节,它一下子让整幅图所呈现的信息简单易懂,清晰明了,在保持美观性的同时又不是专业性,不愧为财经领域标杆级的杂志,图表细节处理上尽显专业性。

其实该图表的核心元素——两条折线(一条是实际值折线图,一条是时间趋势线),制作起来相对容易。

只需一列实际数据,一列直线拟合数据即可。(折线图添加拟合直线)。

可是这样无法模拟两条线之间的颜色区域,所以我的第一直觉是使用三列数据做重叠面积图来模拟该案例:

三列数据分别是实际值、拟合直线数据(在添加拟合直线时同时勾选显示公式,利用公式结合函数,可以则算是该实际时间序列数据的直线拟合点)、以及实际值与拟合直线数据的较低值。

实际值是通过案例原图提取出来的近似值;

拟合值是根据拟合直线的公式结合函数推算出来的;(=-0.315*x+11.596)

实际值与拟合值两者的低值是通过MIN(实际值:拟合值)计算而来

三组数据同时添加制作重叠面积图,并设置第三个序列(实际值与拟合值两者的低值)颜色为背景色。

大致模拟出来原图案例:

可是现在的问题是,第三个序列填色之后会阻挡底图的白色网格线,这就无法呈现原图原貌,虽然可以通过更复杂的方法实现白色网格线在图顶层(但是复杂度较高)。

这里我抛弃了这种做法,想起来之前在在学刘万祥老师的网易云课程——《向经济学人学做图表》的课程里介绍过类似的双折线图交叉颜色带的案例,果然该图也可以通过老师的方法实现,顿时感觉很欣慰。

该方法的大体思路如下:

整体上需要五列数据(不算横轴标签列):

两条折线图数据(实际值、拟合值)

三列辅助列:实际值与拟合值两者较低值、实际值低于拟合值、实际值高于拟合值。

实际值与拟合值两者较低值:

=MIN(C2:D2)

实际值低于拟合值:

=IF(D2>C2,D2-C2,NA())

实际值高于拟合值:

=IF(D2<C2,C2-D2,NA())

五个序列添加之后,前两个序列做折线图,后三个序列转换为堆积面积图。将第三个序列填充透明色隐藏。效果如下:

接下来修改图表区、绘图区、线条色与填充色与原案例图一致:

选择单元格区域并规划至合适的布局,将图表锚定到目标单元格区域;

选择单元格区域并使照相机牌照引用。

对比一下原图与复制的案例演示图:基本上还原了图表的原貌:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-10-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据小魔方 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图数据库 KonisGraph
图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档