繁体   English   中英

geom_bar 重叠标签

[英]geom_bar overlapping labels

为简单起见,假设我们有一个像

# A    
1 1  
2 2   
3 2    
4 2
5 3   

我们有一个具有 3 个可能值 (1,2,3) 的分类变量“A”。 我正在使用此代码:

ggplot(df aes(x="", y=df$A, fill=A))+
   geom_bar(width = 1, stat = "identity")

问题是标签重叠。 另外我想将 1,2,3 的标签更改为 x,y,z。 这是正在发生的事情的图片在此处输入图片说明

这是我使用的实际数据的链接。 https://a.uguu.se/anKhhyEv5b7W_Data.csv

您的图表与您显示的数据样本不符,因此很难确定您的真实数据的结构实际上是否相同。

使用随机示例,我得到以下图:

df <- data.frame(A = sample(1:3,20, replace = TRUE))

library(ggplot2)
ggplot(df, aes(x="A", y=A, fill=as.factor(A)))+
  geom_bar(width = 1, stat = "identity")  +
  scale_fill_discrete(labels = c("x","y","z"))

在此处输入图片说明

编辑:使用 OP 提供的数据

在这里使用您的数据,您应该得到以下图:

ggplot(df, aes(x = "A",y = A, fill = as.factor(A)))+
  geom_col()

在此处输入图片说明

或者,如果您想要 A 的每个单独值的计数,您可以执行以下操作:

library(dplyr)
library(ggplot2)
df %>% group_by(A) %>% count() %>%
  ggplot(aes(x = "A", y = n, fill = as.factor(A)))+
  geom_col()

在此处输入图片说明

这是您要找的吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM