我正在使用ggpubr中的ggline()函数来创建具有mean和SD的线状图。我想增加我的形状的厚度。在ggplot中,这通常是通过geom_point(stroke=)完成的,但它不能与ggline一起工作!有谁知道怎么做吗?
ggline(iris, x = "Species", y = "Sepal.Length", add = "mean_se",
color = "Species",shape = 7,size = 1,point.size=3,palette = c("black", "blue","red"),width=10,geom_point(stroke=1)
)我想要更厚的正方形:

发布于 2020-01-16 22:16:22
您可能需要更新geom默认值。我真的不知道有什么办法
首先要保留默认设置,这样您就可以(从ggplot: How to set default color for all geoms?)恢复它们:
library(ggplot2)
library(purrr)
geom_aes_defaults <- function() {
geom_names <- apropos("^Geom", ignore.case = FALSE)
geoms <- mget(geom_names, env = asNamespace("ggplot2"))
map(geoms, ~ .$default_aes)
}
old = geom_aes_defaults()$GeomPoint现在来看你的图:
update_geom_defaults("point", list(stroke = 1.5))
ggline(iris, x = "Species", y = "Sepal.Length", add = "mean_se",
color = "Species",shape = 7,size = 1,point.size=3,
palette = c("black", "blue","red"),width=10
)然后我们恢复默认设置:
update_geom_defaults("point", list(stroke = old$stroke))
# you can also do
#update_geom_defaults("point", list(stroke = 1))https://stackoverflow.com/questions/59770698
复制相似问题