世界地图中有4个类别

时间:2018-06-28 07:15:57

标签: categories rworldmap

伙计们,

我想使用mapCountryData创建一个仅有4个类别的世界地图。 我希望类别为: BMI < 22.5->显示为绿色/ 22.5 < BMI < 25->显示为黄色/ 25 < BMI < 27.5->显示为橙色/ BMI > 27.5->显示为红色

我尝试使用:ifelse函数,但确实得到了4个类别,但没有正确的颜色。

有人有主意吗?

R脚本中的全部代码:(最后一步:制作世界地图是我奋斗的地方)

从WHO和Wikipedia下载数据:

http://apps.who.int/gho/data/node.main.A904?lang=en-> Excel文件,使用data.text标签->命名为data_bmi

从维基百科收集国家/地区的所有ISO 3数字代码->在Excel中复制过去并将其命名为“国家/地区代码”

图书馆

library(tidyverse)
library(dplyr)

相关标题

data_bmi <- select(data_bmi,2:4,6,8)

所有性别的过滤器

data_bmi <- filter(data_bmi, data_bmi$`Sex (string)` == "Both sexes")

为2016年数据创建单独的表格

data_bmi_2016 <- filter(data_bmi, data_bmi$`Year (string)` == "2016")

名称标头

names(data_bmi_2016) <- c("Year", "Region", "Country", "Sex", "BMI")

更改英国的名称

data_bmi_2016[145, 3] <- "United Kingdom"

添加ISO3国家/地区代码

data_bmi_2016 <- merge(data_bmi_2016, country_codes, by.x = "Country", by.y = "Country")

名称标头

names(data_bmi_2016) <- c("Year", "Region", "Country", "Sex", "BMI", "ISO3V10")

制作世界地图,安装软件包

install.packages("rworldmap")
install.packages("sp")

library(sp)
library(rworldmap)

制作世界地图

data_bmi_2016$BMI <- ifelse(data_bmi_2016$BMI > 27.5, 'red', ifelse(data_bmi_2016$BMI > 25, 'orange', ifelse(data_bmi_2016$BMI > 22.5, 'yellow', ifelse(data_bmi_2016$BMI < 22.5, 'green', 'white'))))

BMI <- joinCountryData2Map(data_bmi_2016)
mapCountryData(BMI, nameColumnToPlot = "BMI")

0 个答案:

没有答案