无法在r中正确绘制data.frame。

我自己都做不到,至少试了2个小时……

我有以下data.frame从CSV文件导入。

> asyl_continents
          2010 2011 2012 2013 2014  2015  2016
Europe    1411 1352 2047 3277 5105  7647  5296
Asia      2832 3229 3903 4418 7123 32152 18002
America     20   17   20   27   35    42    97
Africa     436  757  897 1497 3846  5412  4592
Australia    0    0    0    0    0     0     1
stateless   34   34   35   28   80    88   179
unknown    159  160  140  207  360   408   505

这是它的输出。

structure(list(`2010` = c(1411L, 2832L, 20L, 436L, 0L, 34L, 159L
), `2011` = c(1352L, 3229L, 17L, 757L, 0L, 34L, 160L), `2012` = c(2047L, 
3903L, 20L, 897L, 0L, 35L, 140L), `2013` = c(3277L, 4418L, 27L, 
1497L, 0L, 28L, 207L), `2014` = c(5105L, 7123L, 35L, 3846L, 0L, 
80L, 360L), `2015` = c(7647L, 32152L, 42L, 5412L, 0L, 88L, 408L
), `2016` = c(5296L, 18002L, 97L, 4592L, 1L, 179L, 505L)), class = "data.frame", row.names = c("Europe", 
"Asia", "America", "Africa", "Australia", "stateless", "unknown"
))

我想绘制这样的图: https:/i.stack.imgur.coml7s6l.png。在x-achsis上,应该有年份,每一类(欧洲、亚洲、……、未知)应该有单独的一行。

想知道这是怎么回事吗?在一个学生项目中,我想表明,随着难民的增多,犯罪率只在绝对数上上升,但在相对数上没有上升。想以后把这个数据集和犯罪率合并起来。

解决方案:

以下代码不依赖于非base-R包。

A) graphics::matplot 绘制一个矩阵的列,数据框被强制自动地绘制到这个矩阵中。

matplot(x = as.numeric(colnames(asyl_continents)), # x values: the years
    y    = t(asyl_continents),                 # y values: one column per plotted line each, therefore transpose years' asylum values to columns 
    # col= c(...)                              # could specify your own colors here, as well as line types, thickness etc.
    type = "l",                                # specify type: draw lines, see ? matplot for details
    xlab = "years", ylab = "asylum")

B) legend() 加个传说

legend(x="topleft", legend = row.names(asyl_continents), 
       col = seq_len(ncol(asyl_continents)),      # use matplot's default color sequencs, unless spefified otherwise in matplot() (see https://stackoverflow.com/questions/27796583/how-to-add-colour-matched-legend-to-a-r-matplot)
       lwd = 1, cex=0.85)

你可以根据自己的需要改变颜色、线条类型等,详见? 矩阵图。

enter image description here

给TA打赏
共{{data.count}}人
人已打赏
未分类

循环。这个方法必须返回一个布尔类型的结果。

2022-9-9 4:35:18

未分类

当你在自管kubernetes集群上使用AKS时,你不能做什么?

2022-9-9 4:35:20

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索