在 R 中的堆积条形图上添加类别标签
Adding catagory labels on a stacked bar chart in R
我在 ggplot2 中制作了一个 geom_col()
图表,我想在条形图上为其添加标签,但每个堆叠条形图只能添加一个标签。
这是我的图表在没有标签的情况下的样子:
gI <- df %>%
ggplot(aes(fill = Category, y=csum, x= tijdas)) +
geom_col()
plot(gI)
现在是棘手的部分。每个堆叠条都有一个特定的 Meeting_type,我想将其添加到图中。我试过添加
geom_text(aes(label = Meeting_Type), position = position_dodge(width=0.9), vjust=-0.25)
但这导致每个栏中的每个类别都有一个标签(所以有很多文字):
我希望每个(堆叠的)条形图只有一个标签来指示 Meeting_type。最好在可读的地方。
很难在不查看数据的情况下知道最佳方法,但是用 geom_text
代替 stat_summary
可能是对每一列求和以获得标签位置的好方法:
library(ggplot2)
library(dplyr)
mtcars %>%
ggplot(aes(factor(cyl), y = mpg, fill = factor(gear))) +
geom_col() +
stat_summary(aes(label = factor(cyl), fill = NULL),
fun = sum,
geom = "text", vjust = -0.25)
由 reprex package (v0.3.0)
于 2020-12-15 创建
正如我所说,您的数据可能需要一个不同的函数 - 如果这不是解决方案,那么使用 dput
做 post 一个示例,我们将看看是否可以实现为您的数据工作。
我在 ggplot2 中制作了一个 geom_col()
图表,我想在条形图上为其添加标签,但每个堆叠条形图只能添加一个标签。
这是我的图表在没有标签的情况下的样子:
gI <- df %>%
ggplot(aes(fill = Category, y=csum, x= tijdas)) +
geom_col()
plot(gI)
现在是棘手的部分。每个堆叠条都有一个特定的 Meeting_type,我想将其添加到图中。我试过添加
geom_text(aes(label = Meeting_Type), position = position_dodge(width=0.9), vjust=-0.25)
但这导致每个栏中的每个类别都有一个标签(所以有很多文字):
我希望每个(堆叠的)条形图只有一个标签来指示 Meeting_type。最好在可读的地方。
很难在不查看数据的情况下知道最佳方法,但是用 geom_text
代替 stat_summary
可能是对每一列求和以获得标签位置的好方法:
library(ggplot2)
library(dplyr)
mtcars %>%
ggplot(aes(factor(cyl), y = mpg, fill = factor(gear))) +
geom_col() +
stat_summary(aes(label = factor(cyl), fill = NULL),
fun = sum,
geom = "text", vjust = -0.25)
由 reprex package (v0.3.0)
于 2020-12-15 创建正如我所说,您的数据可能需要一个不同的函数 - 如果这不是解决方案,那么使用 dput
做 post 一个示例,我们将看看是否可以实现为您的数据工作。