[英]stacked barplot in r using ggplot
这些是我的问题:
到目前为止,我真的尝试了所有方法,并且还查看了堆叠条形图上的几乎所有视频,但无法做到。 我缺少一些东西。
我将非常感谢您的帮助。
datt <- read.table(text = " Architektur Biologie Mathematik
Baden-Württemberg 4342 7109 7909
Bayern 4377 7295 7014
Berlin 2929 2969 3449
Brandenburg 1148 982 825
Bremen 427 877 738
Hamburg 574 1513 506
Hessen 5155 4426 7617
Mecklenburg-Vorpommern 445 1468 537
Niedersachsen 3102 5353 5464
Nordrhein-Westfalen 9453 14356 18247
Rheinland-Pfalz 1916 2907 3235
Saarland 296 381 334
Sachsen 1182 1354 1521
Sachsen-Anhalt 758 543 349
Schleswig-Holstein 438 1239 1336
Thüringen 1796 921 445
" , header = TRUE)
library(reshape2)
#Zeile
datt$row <- seq_len(nrow(datt))
#
ww<- melt(datt, id.vars = "row")
ww
library(ggplot2)
ggplot(ww , aes(x = variable, y = value, fill = row) ) +
geom_bar( stat = "identity") +
xlab("\nStudienfach WS2019/20") + ylab("Absolute Häufigkeit\n") +
ggtitle("Drei Studiengängen in den verschiedenen Bundesländern WS2019/22")+
theme(plot.title = element_text(hjust=0.5))
+ geom_text(size=3,position = position_stack(vjust = 0.5))
通过查看您的数据,您应该使用行名称作为分类变量而不是行号,这将被视为具有渐变填充的数字变量。 这将自动使颜色更加“分离”,尽管您将始终使用 16 个项目进行有限的颜色分离。 它还将适当地标记您的图例。
要为每个段添加标签,只需将aes(label = value)
添加到geom_text
。
要将填充比例的名称更改为“Bundesländ”,请使用labs(fill = "Bundesländ")
library(reshape2)
library(ggplot2)
ggplot(melt(within(datt, row <- row.names(datt)), id.vars = "row"),
aes(x = variable, y = value, fill = row)) +
geom_col(size = 0.5, col = "gray50") +
geom_text(aes(label = value), size = 3,
position = position_stack(vjust = 0.5)) +
xlab("\nStudienfach WS2019/20") +
ylab("Absolute Häufigkeit\n") +
labs(fill = "Bundesländ") +
ggtitle("Drei Studiengängen in den verschiedenen Bundesländern WS2019/22") +
theme_bw(base_size = 16) +
theme(plot.title = element_text(hjust = 0.5))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.