我正在使用purrr
制作多个ggplot2
图。如何使用数字字符串为每个x轴指定唯一名称?
我的最佳尝试(下方)只能获取字符串的第一个值,因此当我想要三个不同的1% explained variance
名称时,所有3个图表的x轴都显示为1% explained variance
,2% explained variance
和3% explained variance
。谢谢
library(tidyverse)
new<-c(1,2,3)
iris%>%
split(.$Species) %>%
purrr::map2(.y = names(.),
~ ggplot(data=., aes(x=Sepal.Length, y=Sepal.Width))+
geom_point()+
labs(x=paste(round(new,2),'% explained variance', sep=''))
)
答案 0 :(得分:5)
在 <?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="AngularJS Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
</conditions>
<action type="Rewrite" url="/eCommerceWebsite" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
中,我们可以将map2
指定为.y
,然后使用该索引将“{&#39; new”编入索引。因为&#39; new&#39;是一个长度为3的向量。
seq_along(.)
注意:如果我们没有使用l1 <- iris %>%
split(.$Species) %>%
map2( seq_along(.), ~
ggplot(data=., aes(x=Sepal.Length, y=Sepal.Width))+
geom_point()+
labs(x=paste(round(new[.y],2),'% explained variance', sep='')))
,那么只需传递“&#39; new&#39;作为names
(此处未使用.y
元素的名称)
图表可以保存为单个pdf
list
或者将其保存为同一页面上有多个图的单个png
library(gridExtra)
l2 <- map(l1, ggplotGrob)
ggsave(marrangeGrob(grobs = l2, nrow = 1, ncol =1), file = "plots.pdf")