当我添加 geom_text() 以在 ggplot2 中的条形图上显示标签时,条形图消失
Bars disappear when I add geom_text() to show label on the bars in ggplot2
这是我的代码,当我添加最后一行代码 geom_text() 以在条形图上添加标签时,我的条形图消失了。此外,这发生在 geom_bar(position="fill") 而不是 geom_bar(position="stack")。找不到原因。我的图表是一个圆形条形图。请在这方面帮助我。提前致谢。
这是我的数据
structure(list(Corporations = c("Nichtfinanzielle Kapitalgesellschaften",
"Nichtfinanzielle Kapitalgesellschaften", "Nichtfinanzielle Kapitalgesellschaften",
"Nichtfinanzielle Kapitalgesellschaften", "Nichtfinanzielle Kapitalgesellschaften",
"Nichtfinanzielle Kapitalgesellschaften", "Nichtfinanzielle Kapitalgesellschaften",
"Nichtfinanzielle Kapitalgesellschaften", "Nichtfinanzielle Kapitalgesellschaften",
"Finanzielle Kapitalgellschaften", "Finanzielle Kapitalgellschaften",
"Finanzielle Kapitalgellschaften", "Finanzielle Kapitalgellschaften",
"Finanzielle Kapitalgellschaften", "Finanzielle Kapitalgellschaften",
"Finanzielle Kapitalgellschaften", "Finanzielle Kapitalgellschaften",
"Finanzielle Kapitalgellschaften", "Private Haushalte", "Private Haushalte",
"Private Haushalte", "Private Haushalte", "Private Haushalte",
"Private Haushalte", "Private Haushalte", "Private Haushalte",
"Private Haushalte", "Staat", "Staat", "Staat", "Staat", "Staat",
"Staat", "Staat", "Staat", "Staat", "Private Organisationen ohne Erwerbszweck",
"Private Organisationen ohne Erwerbszweck", "Private Organisationen ohne Erwerbszweck",
"Private Organisationen ohne Erwerbszweck", "Private Organisationen ohne Erwerbszweck",
"Private Organisationen ohne Erwerbszweck", "Private Organisationen ohne Erwerbszweck",
"Private Organisationen ohne Erwerbszweck", "Private Organisationen ohne Erwerbszweck"
), Instruments = c("Währungsgold und Sonderziehungsrechte", "Bargeld",
"Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen", "Währungsgold und Sonderziehungsrechte",
"Bargeld", "Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen", "Währungsgold und Sonderziehungsrechte",
"Bargeld", "Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen", "Währungsgold und Sonderziehungsrechte",
"Bargeld", "Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen", "Währungsgold und Sonderziehungsrechte",
"Bargeld", "Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen"), Q1.19 = c(NA, 6299, 555223, 2427, 32995,
2189603, 56996, 31362, 1198580, 139931, 38424, 4340085, 3202446,
60692, 2975850, 89437, 588297, 342623, NA, 230878, 2251130, 12242,
1625426, 1255442, 2281472, 0, 30619, NA, 487, 319099, 6259, 38429,
617751, 948, 41669, 99347, NA, NA, 62271, 1840, 15811, 92797,
NA, 422, NA), Q2.19 = c(NA, 6454, 551837, 2085, 31926, 2198338,
57709, 32616, 1178917, 148943, 39256, 4359950, 3303698, 60708,
3056242, 89612, 726303, 358358, NA, 239382, 2284960, 12250, 1645940,
1292362, 2297914, 0, 31502, NA, 487, 330817, 6150, 39239, 645949,
954, -41925, 94741, NA, NA, 62626, 1839, 15866, 95467, NA, 362,
NA), Q3.19 = c(NA, 6466, 573901, 2295, 32219, 2232079, 58430,
32051, 1203447, 162442, 39311, 4261998, 3420453, 60885, 3157147,
91016, 920818, 382937, NA, 249723, 2298254, 12225, 1667098, 1322047,
2313450, 0, 32251, NA, 487, 330779, 6004, 42480, 676359, 960,
-47370, 108842, NA, NA, 62854, 1913, 16052, 98454, NA, 480, NA
), Q4.19 = c(NA, 7386, 590593, 2183, 33011, 2317831, 59160, 31542,
1229358, 161204, 44712, 4089901, 3332533, 60485, 3266643, 91257,
761489, 440720, NA, 260243, 2337146, 12045, 1686127, 1383188,
2331436, 0, 32043, NA, 487, 313552, 5315, 40097, 670891, 966,
-42715, 104839, NA, NA, 61959, 1919, 16446, 103620, NA, 380,
NA), Q1.20 = c(NA, 6742, 588896, 1979, 33086, 2103282, 59900,
44907, 1178927, 173489, 49423, 4494126, 3354457, 61080, 2975370,
90025, 1102066, 400057, NA, 279788, 2341738, 10748, 1703401,
1220313, 2354882, 0, 31439, NA, 487, 350979, 5709, 41296, 664676,
972, -44212, 115474, NA, NA, 62339, 1740, 16510, 94113, NA, 412,
NA)), row.names = c(NA, -45L), class = c("tbl_df", "tbl", "data.frame"
))
这是我的代码;
ggplot(data, aes(x = Corporations, y = Q1.19, fill = Instruments)) +
geom_bar(position = "fill", stat = "identity") +
coord_polar() +
ggtitle(expression(paste(underline("Quartal 1, 2019")))) +
theme(legend.box.background = element_rect(color="red", size=2),
legend.box.margin = margin(16, 6, 6, 6),
panel.background = element_blank(),
panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.title.x = element_blank(),
axis.title.y = element_blank(),
axis.text.y=element_blank(),
axis.ticks.x = element_blank(),
axis.ticks.y = element_blank(),
plot.title = element_text(hjust = 0.5, size = 20)) +
scale_x_discrete(labels = wrap_format(10)) +
geom_text(aes(y=Q1.19, label = paste(Q1.19)),
size = 2, position = position_stack(vjust = 0.7))
试试下面的代码。我将 geom_text
中的 position_stack
更改为 position_fill
。
ggplot(data, aes(x = Corporations, y = Q1.19, fill = Instruments)) +
geom_bar(position = "fill", stat = "identity") +
coord_polar() +
ggtitle(expression(paste(underline("Quartal 1, 2019")))) +
theme(legend.box.background = element_rect(color="red", size=2),
legend.box.margin = margin(16, 6, 6, 6),
panel.background = element_blank(),
panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.title.x = element_blank(),
axis.title.y = element_blank(),
axis.text.y=element_blank(),
axis.ticks.x = element_blank(),
axis.ticks.y = element_blank(),
plot.title = element_text(hjust = 0.5, size = 20)) +
scale_x_discrete(labels = wrap_format(10)) +
geom_text(aes(y=Q1.19, label = paste(Q1.19)),
size = 2, position = position_fill(vjust = 0.7))
这是我的代码,当我添加最后一行代码 geom_text() 以在条形图上添加标签时,我的条形图消失了。此外,这发生在 geom_bar(position="fill") 而不是 geom_bar(position="stack")。找不到原因。我的图表是一个圆形条形图。请在这方面帮助我。提前致谢。 这是我的数据
structure(list(Corporations = c("Nichtfinanzielle Kapitalgesellschaften",
"Nichtfinanzielle Kapitalgesellschaften", "Nichtfinanzielle Kapitalgesellschaften",
"Nichtfinanzielle Kapitalgesellschaften", "Nichtfinanzielle Kapitalgesellschaften",
"Nichtfinanzielle Kapitalgesellschaften", "Nichtfinanzielle Kapitalgesellschaften",
"Nichtfinanzielle Kapitalgesellschaften", "Nichtfinanzielle Kapitalgesellschaften",
"Finanzielle Kapitalgellschaften", "Finanzielle Kapitalgellschaften",
"Finanzielle Kapitalgellschaften", "Finanzielle Kapitalgellschaften",
"Finanzielle Kapitalgellschaften", "Finanzielle Kapitalgellschaften",
"Finanzielle Kapitalgellschaften", "Finanzielle Kapitalgellschaften",
"Finanzielle Kapitalgellschaften", "Private Haushalte", "Private Haushalte",
"Private Haushalte", "Private Haushalte", "Private Haushalte",
"Private Haushalte", "Private Haushalte", "Private Haushalte",
"Private Haushalte", "Staat", "Staat", "Staat", "Staat", "Staat",
"Staat", "Staat", "Staat", "Staat", "Private Organisationen ohne Erwerbszweck",
"Private Organisationen ohne Erwerbszweck", "Private Organisationen ohne Erwerbszweck",
"Private Organisationen ohne Erwerbszweck", "Private Organisationen ohne Erwerbszweck",
"Private Organisationen ohne Erwerbszweck", "Private Organisationen ohne Erwerbszweck",
"Private Organisationen ohne Erwerbszweck", "Private Organisationen ohne Erwerbszweck"
), Instruments = c("Währungsgold und Sonderziehungsrechte", "Bargeld",
"Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen", "Währungsgold und Sonderziehungsrechte",
"Bargeld", "Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen", "Währungsgold und Sonderziehungsrechte",
"Bargeld", "Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen", "Währungsgold und Sonderziehungsrechte",
"Bargeld", "Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen", "Währungsgold und Sonderziehungsrechte",
"Bargeld", "Einlagen", "Schuldverschreibungen", "Kredite", "Anteilsrechte",
"Versicherungstechnische Rückstellungen", "Finanzderivate und Mitarbeiteroptionen",
"Sonstige Forderungen"), Q1.19 = c(NA, 6299, 555223, 2427, 32995,
2189603, 56996, 31362, 1198580, 139931, 38424, 4340085, 3202446,
60692, 2975850, 89437, 588297, 342623, NA, 230878, 2251130, 12242,
1625426, 1255442, 2281472, 0, 30619, NA, 487, 319099, 6259, 38429,
617751, 948, 41669, 99347, NA, NA, 62271, 1840, 15811, 92797,
NA, 422, NA), Q2.19 = c(NA, 6454, 551837, 2085, 31926, 2198338,
57709, 32616, 1178917, 148943, 39256, 4359950, 3303698, 60708,
3056242, 89612, 726303, 358358, NA, 239382, 2284960, 12250, 1645940,
1292362, 2297914, 0, 31502, NA, 487, 330817, 6150, 39239, 645949,
954, -41925, 94741, NA, NA, 62626, 1839, 15866, 95467, NA, 362,
NA), Q3.19 = c(NA, 6466, 573901, 2295, 32219, 2232079, 58430,
32051, 1203447, 162442, 39311, 4261998, 3420453, 60885, 3157147,
91016, 920818, 382937, NA, 249723, 2298254, 12225, 1667098, 1322047,
2313450, 0, 32251, NA, 487, 330779, 6004, 42480, 676359, 960,
-47370, 108842, NA, NA, 62854, 1913, 16052, 98454, NA, 480, NA
), Q4.19 = c(NA, 7386, 590593, 2183, 33011, 2317831, 59160, 31542,
1229358, 161204, 44712, 4089901, 3332533, 60485, 3266643, 91257,
761489, 440720, NA, 260243, 2337146, 12045, 1686127, 1383188,
2331436, 0, 32043, NA, 487, 313552, 5315, 40097, 670891, 966,
-42715, 104839, NA, NA, 61959, 1919, 16446, 103620, NA, 380,
NA), Q1.20 = c(NA, 6742, 588896, 1979, 33086, 2103282, 59900,
44907, 1178927, 173489, 49423, 4494126, 3354457, 61080, 2975370,
90025, 1102066, 400057, NA, 279788, 2341738, 10748, 1703401,
1220313, 2354882, 0, 31439, NA, 487, 350979, 5709, 41296, 664676,
972, -44212, 115474, NA, NA, 62339, 1740, 16510, 94113, NA, 412,
NA)), row.names = c(NA, -45L), class = c("tbl_df", "tbl", "data.frame"
))
这是我的代码;
ggplot(data, aes(x = Corporations, y = Q1.19, fill = Instruments)) +
geom_bar(position = "fill", stat = "identity") +
coord_polar() +
ggtitle(expression(paste(underline("Quartal 1, 2019")))) +
theme(legend.box.background = element_rect(color="red", size=2),
legend.box.margin = margin(16, 6, 6, 6),
panel.background = element_blank(),
panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.title.x = element_blank(),
axis.title.y = element_blank(),
axis.text.y=element_blank(),
axis.ticks.x = element_blank(),
axis.ticks.y = element_blank(),
plot.title = element_text(hjust = 0.5, size = 20)) +
scale_x_discrete(labels = wrap_format(10)) +
geom_text(aes(y=Q1.19, label = paste(Q1.19)),
size = 2, position = position_stack(vjust = 0.7))
试试下面的代码。我将 geom_text
中的 position_stack
更改为 position_fill
。
ggplot(data, aes(x = Corporations, y = Q1.19, fill = Instruments)) +
geom_bar(position = "fill", stat = "identity") +
coord_polar() +
ggtitle(expression(paste(underline("Quartal 1, 2019")))) +
theme(legend.box.background = element_rect(color="red", size=2),
legend.box.margin = margin(16, 6, 6, 6),
panel.background = element_blank(),
panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
axis.title.x = element_blank(),
axis.title.y = element_blank(),
axis.text.y=element_blank(),
axis.ticks.x = element_blank(),
axis.ticks.y = element_blank(),
plot.title = element_text(hjust = 0.5, size = 20)) +
scale_x_discrete(labels = wrap_format(10)) +
geom_text(aes(y=Q1.19, label = paste(Q1.19)),
size = 2, position = position_fill(vjust = 0.7))