簡體   English   中英

自定義圖例形狀和大小ggplot2

[英]Custom legend shape and size ggplot2

我嘗試自定義圖例,然后用所需的指定顏色填充圖例,並刪除其中的任何斜杠或符號。

theme(axis.title.x = element_blank(),
      axis.title.y = element_blank(),
      axis.title.y.right = element_blank(),
      axis.ticks.x=element_blank(),
      axis.ticks.y=element_blank(),
      axis.text.x=element_text(angle = 45, size = 10, vjust = 0.5, face = "bold"),
      axis.text.y=element_blank(),
      axis.line = element_line(colour = "white"),
      panel.grid.major = element_blank(),
      panel.grid.minor = element_blank(),
      panel.border = element_blank(),
      panel.background = element_blank(),
      plot.background=element_blank(),
      legend.position="left",
      legend.title=element_blank(),
      legend.text = element_text(size = 16, face = "bold"),
      legend.key = element_rect(fill = c("red", "blue")))

在此處輸入圖片說明

但是,盡管我仍然需要添加一些東西來實現自己的願望。
legend.key在這里似乎不正確。
我想要的是:哦! 但第一個是紅色而不是橙色。

在此處輸入圖片說明

我發現最好的解決方案是使用指南功能。 實際上,以下代碼可以完成工作:

df <- data.frame(value = rnorm(100), group = as.factor(sample(c(1, 2), size = 100, replace = T)))

ggplot(df, aes(x = value, y=value, col = group)) +
  scale_color_manual(values = c("1" = "red", "2" = "blue")) +
  geom_point() + 
  guides(colour = guide_legend(override.aes = list(shape = 15, size = 10))) +
  theme(axis.title.x = element_blank(),
        axis.title.y = element_blank(),
        axis.title.y.right = element_blank(),
        axis.ticks.x=element_blank(),
        axis.ticks.y=element_blank(),
        axis.text.x=element_text(angle = 45, size = 10, vjust = 0.5, face = "bold"),
        axis.text.y=element_blank(),
        axis.line = element_line(colour = "white"),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank(),
        panel.border = element_blank(),
        panel.background = element_blank(),
        plot.background=element_blank(),
        legend.position="left",
        legend.title = element_blank(),
        legend.text = element_text(size = 16, face = "bold"),
        legend.key = element_blank(),
        legend.box.background =  element_blank())

我的想法是關於stackoverflow的其他幾篇文章:

ggplot2自定義圖例形狀

如何增加ggplot2圖例中的點數?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM