如何在应用 coord.flip() 后组织 geom_bar() 值?包ggplot2
How to organize geom_bar() values after applying coord.flip()? Package ggplot2
如何将数字集中放置在正确的位置?我测试了很多参数,但我还没有找到解决方案。在 coordin_flip() 之后一切都很混乱。观察下面的图像和代码。
代码:
# Package
library(ggplot2)
# Create a dataframe
RATE <- c('IgG','IgG','IgA/IgG','IgA/IgG')
GROUP <- c('Asymptomatic','Symptomatic','Asymptomatic','Symptomatic')
N_POSITIVE <- c(12,100,14,107)
PORCENT <- c(7.05, 58.8, 7.73, 59.1)
df <- data.frame(RATE, GROUP, N_POSITIVE, PORCENT)
# Plot
ggplot(df, aes(x = RATE, y = PORCENT, fill = GROUP)) +
geom_bar(stat="identity", width = 0.5) +
geom_text(aes(label=N_POSITIVE),
vjust = -0.3, color = 'black',
size = 3) +
coord_flip() +
labs(x = '', y = 'Percentage (%)\n') +
scale_fill_manual(values = c("#0073c2", "#efc000")) +
theme_classic() +
theme(
legend.position = "top",
legend.title = element_blank(),
axis.text = element_text(angle = 0, color = "black", size = 10, face = 0),
axis.title.x = element_text(angle = 0, color = "black", size = 12, face = 0))
图片:
这是你想要的吗? (减去我遗漏的其他格式)
ggplot(df, aes(x = PORCENT, y = RATE, fill = GROUP)) +
geom_col(width = 0.5) +
geom_text(aes(label=N_POSITIVE),
vjust = -0.3, color = 'black', hjust = 1.1,
size = 3, position = "stack")
(请注意,自 2020 年 3 月的 ggplot2 3.3.0 以来,如果您将大多数 geom 分配给您想要的轴,则它们不需要 coord_flip
。如果解释不正确,还有一个“ orientation”参数,但这里似乎没有必要。此外,geom_col
等于 geom_bar(stat="identity")
。)
如何将数字集中放置在正确的位置?我测试了很多参数,但我还没有找到解决方案。在 coordin_flip() 之后一切都很混乱。观察下面的图像和代码。
代码:
# Package
library(ggplot2)
# Create a dataframe
RATE <- c('IgG','IgG','IgA/IgG','IgA/IgG')
GROUP <- c('Asymptomatic','Symptomatic','Asymptomatic','Symptomatic')
N_POSITIVE <- c(12,100,14,107)
PORCENT <- c(7.05, 58.8, 7.73, 59.1)
df <- data.frame(RATE, GROUP, N_POSITIVE, PORCENT)
# Plot
ggplot(df, aes(x = RATE, y = PORCENT, fill = GROUP)) +
geom_bar(stat="identity", width = 0.5) +
geom_text(aes(label=N_POSITIVE),
vjust = -0.3, color = 'black',
size = 3) +
coord_flip() +
labs(x = '', y = 'Percentage (%)\n') +
scale_fill_manual(values = c("#0073c2", "#efc000")) +
theme_classic() +
theme(
legend.position = "top",
legend.title = element_blank(),
axis.text = element_text(angle = 0, color = "black", size = 10, face = 0),
axis.title.x = element_text(angle = 0, color = "black", size = 12, face = 0))
图片:
这是你想要的吗? (减去我遗漏的其他格式)
ggplot(df, aes(x = PORCENT, y = RATE, fill = GROUP)) +
geom_col(width = 0.5) +
geom_text(aes(label=N_POSITIVE),
vjust = -0.3, color = 'black', hjust = 1.1,
size = 3, position = "stack")
(请注意,自 2020 年 3 月的 ggplot2 3.3.0 以来,如果您将大多数 geom 分配给您想要的轴,则它们不需要 coord_flip
。如果解释不正确,还有一个“ orientation”参数,但这里似乎没有必要。此外,geom_col
等于 geom_bar(stat="identity")
。)