r - 在(R,ggplot2)中围绕条形图和类别绘制一个矩形

标签 r ggplot2

我想围绕类别的单个级别创建一个框/矩形,并包括轴类别文本和栏本身:

enter image description here

正如您在照片中看到的那样,矩形延伸到网格之外并进入绘图区域以包含轴文本。我希望有一些可定制的东西,这样我就可以画圆角或不画圆角,改变颜色,并指定它的位置。

这是我用来制作情节的一些通用代码:

ggplot(mtcars, aes(x=factor(cyl)))+
  geom_bar(stat="count", width=0.7, fill="steelblue")+
  theme_minimal()

希望这个问题没有在某处得到解答!

最佳答案

  1. 对于矩形使用 annotate"rect"
  2. 要越过 x 轴,您可以将 x 轴设置为空白
  3. 然后添加新的准轴,geom_text 将 y 设置为 0 或 -1。玩以适应:
p <- ggplot(mtcars, aes(x=factor(cyl)))+
    geom_bar(stat="count", width=0.7, fill="steelblue")+
    theme_minimal() 
    

p + annotate("rect", xmin = 0.5, xmax = 1.5, ymin = -1, ymax = 12,
             alpha = 0, color= "green") +
    theme(axis.text.x = element_blank(),
            axis.line.x = element_blank(),
            axis.ticks.x = element_blank()) +
    geom_text(aes(y = -0.5, x = factor(cyl), 
                  label = cyl)) +
    labs(title="Rectangle over x axis!",
          x ="cyl", y = "count")

enter image description here

关于r - 在(R,ggplot2)中围绕条形图和类别绘制一个矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68640187/

相关文章:

R 在图本身上打印线性回归方程

c# - 当 j 是 i 的函数时,R 中嵌套 for 循环的语法

r - 错误 : Aesthetics must either be length one, 或省略 NA 时与 dataProblems:personCategoryz 相同的长度

r - 如何将图像叠加到 ggplot 上?

R Shiny ggplot 对 varSelectInput 有反应

r - 在 R 中模拟翻转炸薯条

r - 基于ggplot2基于不同数据集的两个图例

r - Phyloseq 中的 ggplot2 对象 - 如何重新排序 x 轴条目?

r - 在同一轴上绘制年份和月份

删除 geom_histogram 的基线颜色