R 如何创建要插入ggplot的对象(当有多个零件带有+;)时)?
在我的分析工作中,我使用R 如何创建要插入ggplot的对象(当有多个零件带有+;)时)?,r,ggplot2,R,Ggplot2,在我的分析工作中,我使用R中的ggplot生成多个图。我想将所需的绘图主题(使用ggtheme加上一些手动更改)设置为单个对象,然后在我生成的每个绘图中调用此主题。我在下面举了一个例子 由于我的主题对象的定义中存在+,此代码引发错误。ggplot函数将此符号识别为添加新元素,但在创建单独的主题对象以调用ggplot时,我无法使用此符号。显然,我可以将主主题转移到ggplot调用中,只需将手动更改保留在theme中,但为了简洁起见,我希望将整个内容放在一个对象中 #Load libraries l
R
中的ggplot
生成多个图。我想将所需的绘图主题(使用ggtheme
加上一些手动更改)设置为单个对象,然后在我生成的每个绘图中调用此主题。我在下面举了一个例子
由于我的主题对象的定义中存在+
,此代码引发错误。ggplot
函数将此符号识别为添加新元素,但在创建单独的主题
对象以调用ggplot
时,我无法使用此符号。显然,我可以将主主题转移到ggplot
调用中,只需将手动更改保留在theme
中,但为了简洁起见,我希望将整个内容放在一个对象中
#Load libraries
library(ggplot2);
library(ggthemes);
#Create mock data for illustrative purposes
DATA <- data.frame(x = c(3,6,8,11,2,7,4,4,3,6),
y = c(12,8,8,4,15,10,9,13,11,6));
#Set theme for plots
THEME <- theme_economist() + scale_colour_economist() +
theme(plot.title = element_text(hjust = 0.5),
plot.subtitle = element_text(hjust = 0.5, face = 'bold'),
axis.title.y = element_text(face = 'bold', size = 12),
plot.margin = margin(t = 0, r = 20, b = 0));
#Error: Don't know how to add RHS to a theme object
#Generate plot using above theme
FIGURE <- ggplot(data = DATA, aes(x = x, y = y)) +
geom_point() + THEME;
FIGURE;
#加载库
图书馆(GG2);
图书馆(主题);
#为说明目的创建模拟数据
数据用列表
包装主题调用,并用逗号替换+:
THEME <- list(theme_economist(), scale_colour_economist(),
theme(plot.title = element_text(hjust = 0.5),
plot.subtitle = element_text(hjust = 0.5, face = 'bold'),
axis.title.y = element_text(face = 'bold', size = 12),
plot.margin = margin(t = 0, r = 20, b = 0)))
THEME你的帖子中有几个拼写错误。它应该是库(ggplot2)
(而不是库(ggplot)
)和主题(plot.margin=…)
(而不是主题(margin=…)
)。