GBD数据库——如何绘制SDI与发病率的相关图

这篇推文是GBD系列的第8篇,我们可以看下另外一篇示例文章The global, regional, and national burden of oesophageal cancer and

its attributable risk factors in 195 countries and territories, 1990–2017: a

systematic analysis for the Global Burden of Disease Study 2017的图4:


做上面这张图,仔细看下需要准备的数据,需要1990-2019年的SDI数据,这个数据大家可以直接从GBD官网搜索下载,网址地址:http://ghdx.healthdata.org/data-type/estimate

通过这个网址搜索可以下到1950-2019的SDI数据

http://ghdx.healthdata.org/record/ihme-data/gbd-2019-socio-demographic-index-sdi-1950-2019


下载好数据打开文件可以查看下数据格式


大家可以看到每个国家及地区1990-2019年的SDI的具体数值,我们删去这个excel文件的标题抬头,另存为CSV格式,并将文中的“·”替换成“.”,否则导入到R语言中数据会被默认成字符,准备好数据后,我们打开R进行操作


首先设置路径,装载R包


读取数据


可以查看下SDI数据形式:


由于SDI数据是属于宽形数据,我们需要将SDI转换成长形数据:也就是一个地区,一个年份为一行,这里我们要用到reshape包


数据转换好后,再查看下数据


这时候我们要做的几件事就是:1.变量名要和EC数据变量名一致,合并用,2.year变量要去掉“X”字符,转换为数值变量


我们可以再查看下数据


然后我们再获取ASR数据


最后需要将ASR,SDI数据合并成一个数据框


针对图A,只需要ggplot2里的点图和拟合曲线功能就可以作图


最后出来的图形基本上和示例文章中的图形差不多,大家在AI里稍微调整即可。


接下来我们看图B:

图B需要我们准备每个国家2019年的SDI以及ASR数据即可作图

同样的我们读取相应的数据


由于SDI里和EC里的location有些国家名字会有出入,我们需要进行调整,调整SDI与EC里location命名一致


接着我们合并数据


最后我们作图,由于国家数比较多,将国家名字映射到图形中,需要调整文字大小,如果文字少一般用ggplot2中geom_text即可,但是本次作图文字较多,我们采用geom_text_repel更妥当,代码如下:


最后做出来的图形大概长这样


最后大家在AI中再调整下图形即可。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容