请问大佬们,这些漂亮的信息设计图表的视觉是怎么做的?

请问大佬们,这些漂亮的信息设计图表的视觉是怎么做的?

作者:黄天元,复旦大学理学博士,热爱数据科学与开源工具(R),致力于利用数据科学迅速积累行业经验优势和科学知识发现。著有《R语言高效数据处理指南》(《R语言数据高效处理指南》(黄天元)【摘要 书评 试读】- 京东图书)、《文本数据挖掘——基于R语言》(《文本数据挖掘 基于R语言》(黄天元)【摘要 书评 试读】- 京东图书)。知乎专栏:R语言数据挖掘。邮箱:huang.tian-yuan@qq.com.欢迎合作交流。

这份可视化其实很久就开始玩了,但是由于比较忙一直也没有时间形成一个帖子来记录。早年卡看到TidyTuesday上面有大佬做的可视化(GitHub - z3tt/TidyTuesday: My contributions to the #TidyTuesday challenge),实在是惊艳,让我知道刚好能用和极致体验是存在巨大差异的。同样使用一个ggplot2,但是有人却可以使用得如此细致入微,通过一个又一个细节让你感觉到可视化的美丽与威力。

恰逢之前在统计之都的公众号上看到一份分析(数说风云:中科院近20年院士增选之数据分析),这是关于中科院历年增选院士所做的统计。这份分析对数据做了很好的清洗和整理,又以开源自由的精神分享了数据(https://github.com/cosname/CAS-fellow/),因此就想用这份数据做点东西。

闲话休叙,先上图:

我相信只要可视化专家来,它依然有很多细节可以修缮,还具有提升的空间(欢迎评论区提出)。但是这个可视化作品比起我以前的可视化实现,肯定是用了更多的设计思路。我这里不再用文字去解释这个图,如果看这个图还不能理解这个图的意思,那必须是作者的问题。

这里只来提一些细节,来阐明这份看起来比较简单的可视化,其实需要考虑多少因素,在设计上需要反复调节:

1、背景颜色:每一个学校机构都会有自己标志性的背景色,不是乱选的。比如清华是紫色、北大是红色、复旦是蓝色。中科院的话,就是这种背景色比较合适,不信大家来看看我院的其他宣传稿(一图读懂:中国科学院“基础研究十条”)。这里使用的背景色是skyblue,也就是天蓝色。

2、字体:中文来说,使用楷体看起来比较舒服。英文这里使用Times New Roman,都是系统自带的颜色。使用showtext包进行载入。字体的选择,也是需要反复尝试的,不是所有情况都适用。

3、边框和背景线:ggplot2中的默认绘图,会带有边框和背景线,比如下面这种效果:

但是我们这里,需要把背景设为透明色,边框和网格线全部去掉,不然可能就不好看。

4、配色:不同的人有不同的配色偏好,好不好看也很讲主观好恶,但是一定要说出个所以然来才行。这里右图配色用了我最近在网上找到的一个调色板(https://github.com/johannesbjork/LaCroixColoR),左图则是看到有其他人用过这个,感觉不是特别突兀,就使用了。其实就是需要尝试,没有捷径可走。

5、大小:无论是字体的大小,还是图片本身的大小,都是需要调节的,不然比例就会失衡。一般函数里面都会有size参数供你调节,最后出图可以调节长宽和像素(width/height/dpi)。这个依然需要不断尝试。

6、插入图片:左下角的院徽,是用cowplot来插入的。它的大小,放置的位置,都需要反复调整。当然,找到这个图片本身,也不容易,需要清晰,而且背景需要透明。

7、生成图片的文件格式:ggsave直接生成png经常会出现一些问题,让这个图走样。这里采用先存成pdf,然后使用magick包再转成png的方法来保存图片,最后文件大小也合适,而且还比较清晰。可以给大家看看不会正确保存,图像的清晰度是什么样的:

上面提到的细节,肯定不是所有的细节,只是我能想起来的主要的细节,很多细节还需要自己去探索和调试。。现在终于理解为什么网上如果需要让别人协助你做一张图,价钱非常高,因为在这里面每一个细节能做的调试,都非常丰富。一张图调一天,一点都不意外。最后,奉上这个项目的代码和数据,供大家参考: