我用這段代碼創建了以下圖表
geom_bar(colour="black",fill="darkgrey") theme_apa() theme(
plot.title = element_blank(),
axis.title.x = element_blank(),
axis.title.y = element_blank())
geom_text(stat='count', aes(label=..count..), vjust=-0.5)
scale_y_continuous(limits = c(0,25))

首先,如何讓
scale_y_continuous(limits = c(0,25))圖形自動識別最大計數,并將y軸擴大3?在這種情況下,我自己將它設定為 25,但是有沒有辦法讓它自動做到這一點(例如,第一個回應中的 22 3)?在每個欄的頂部,我有每個回應的計數。有沒有辦法讓它顯示計數,并在括號中顯示計數與總數的百分比?例如,總共 51 個回應中的 22 個的百分比看起來像22 (43%)
uj5u.com熱心網友回復:
逐條回答你的問題。
limitsscale的引數可以采用函式(或在最近版本中為 lambda 語法公式),該函式將自然限制作為長度為 2 的向量作為輸入。如果您想將最大值擴大 3,您可以撰寫自己的公式。- 您可以使用該
after_stat()函式訪問計算變數,因此您可以count根據自己的喜好格式化計算變數。
library(ggplot2)
df <- data.frame(
value = sample(LETTERS[1:5], 50, replace = TRUE)
)
ggplot(df, aes(value))
geom_bar()
geom_text(
stat = "count", vjust = -1,
aes(label = after_stat(
paste0(count, " (", count * 100 / sum(count), "%)")
))
)
scale_y_continuous(
limits = ~ c(0, .x[2] 3)
)

由reprex 包(v0.3.0)于 2021 年 11 月 1 日創建
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/343669.html
上一篇:將字符向量與資料框匹配并添加新列
