我被要求在下面的情节周围放置一个完整的边框:

使用panel.border = element_rect(colour = "black")结果在图中丢失变成空白.
我无法使用,theme_bw()因为它没有与通常主题相同的功能,我目前使用的代码如下:
graph<-ggplot(d,aes(x=d$AOE, y=d$MEI)
)+
geom_point(shape=20, size=3)+
geom_rug()+
annotate("text", x = -1.1, y = 14000, label = "27/04/2011") +
annotate("text", x = -1.3, y = 10400, label = "03/04/1974") +
xlab("MEI")+
ylab("AOE")+
scale_y_log10()+
theme(axis.text.y = element_text(size=14),
axis.text.x = element_text(size=14),
axis.title.y = element_text(size=14),
axis.title.x = element_text(size=14),
panel.background = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.line = element_line(colour = "black")
)
graph
Run Code Online (Sandbox Code Playgroud)
任何关于如何获得全黑边框的建议将非常感谢!
And*_*rie 49
要使用panel.border您还必须使用指定空白填充fill=NA.
试试这个:
library(ggplot2)
ggplot(mtcars, aes(mpg, disp)) + geom_point() + geom_rug() +
theme(axis.text.y = element_text(size=14),
axis.text.x = element_text(size=14),
axis.title.y = element_text(size=14),
axis.title.x = element_text(size=14),
panel.background = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.line = element_line(colour = "black"),
panel.border = element_rect(colour = "black", fill=NA, size=5)
)
Run Code Online (Sandbox Code Playgroud)

Jaa*_*aap 17
您可以使用theme_bw()和theme()在一起.这应该工作:
# creating some data
set.seed(1)
d <- data.frame(MEI=rnorm(100), AOE=rlnorm(100, 10, 5))
# creating the plot
ggplot(d,aes(x=MEI, y=AOE)) +
geom_point(shape=20, size=3) +
geom_rug() +
scale_y_log10() +
theme_bw() +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_rect(colour = "black", size=4))
Run Code Online (Sandbox Code Playgroud)
这给了:

没有theme_bw()@Andrie灵感的解决方案,但使用panel.background而不是panel.border:
ggplot(d,aes(x=MEI, y=AOE)) +
geom_point(shape=20, size=3) +
geom_rug() +
scale_y_log10() +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_rect(colour = "black", size=4, fill=NA))
Run Code Online (Sandbox Code Playgroud)
这将给出完全相同的情节.之间的区别panel.background,并panel.border是panel.background绘制的情节之下,并panel.border绘制在图的顶部.
Mil*_*ain 11
如果您使用任何选项panel.,则在刻面时,每个单独的刻面周围都会有一个边框。如果您想要整个图的外部有边框,包括标题等,请使用plot.background. 例如:
library(ggplot2)
ggplot(mtcars, aes(mpg, disp)) + geom_point() + geom_rug() +
labs(title = "Hello plot!") +
facet_wrap(~cyl) +
theme(axis.text.y = element_text(size=14),
axis.text.x = element_text(size=14),
axis.title.y = element_text(size=14),
axis.title.x = element_text(size=14),
panel.background = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.line = element_line(colour = "black"),
plot.background = element_rect(colour = "black", fill=NA, size=5)
)
Run Code Online (Sandbox Code Playgroud)

由reprex 包(v2.0.0)创建于 2021-06-22