【问题标题】:Add title to multiple graph in R在R中为多个图形添加标题
【发布时间】:2020-10-24 14:38:24
【问题描述】:

我正在尝试为我的所有情节循环添加标题,这是我所做的:

首先我使用split() 函数拆分数据:

sep_team_season_stage <- split(data[cols], 
                              list(data$Season,data$Stage,data$Team),drop = TRUE)

然后我想绘制一堆雷达图:所以我使用了一个循环:

for (i in sep_team_season_stage){
  print(ggRadar(i, aes(group = "Team")))
}

然后我想为图表添加倾斜:我看到拆分功能产生的“标题”很好,所以我想回忆一下:

plotnames = names(sep_team_season_stage)

并添加到for循环中:

for (i in sep_team_season_stage){
  a=1,
  print(ggRadar(i, aes(group = "Team"))+ ggtitle(plotnames[a])),
  a= a+1
}

它不起作用,我该如何解决它?

【问题讨论】:

  • 应该 aes(group = "Team")aes(group = Team) 不带引号?

标签: r loops ggplot2


【解决方案1】:

没有数据可以对此进行测试,但在这种情况下,当您想要访问列表的名称时,您可以使用 imap from purrr

plot_list <- purrr::imap(sep_team_season_stage, 
                        ~ggRadar(.x, aes(group = "Team"))+ ggtitle(.y))

使用Map 并传递名称和数据。

plot_list <- Map(function(x, y) ggRadar(x, aes(group = "Team")) + ggtitle(y), 
                 sep_team_season_stage, names(sep_team_season_stage))

【讨论】:

  • 我使用了地图功能,它成功了!但是如何显示 plot_list 中的图表?
  • 您可以使用plot_list[[1]]plot_list[[2]] 等获取单个图。如果您想在一张图中绘制图列表,请查看stackoverflow.com/questions/10706753/…
猜你喜欢
  • 2013-02-19
  • 1970-01-01
  • 2019-09-08
  • 1970-01-01
  • 2011-04-07
  • 2011-04-29
  • 2020-11-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多