gpt4 book ai didi

r - ggplot2 中的离散 X 标签没有结束

转载 作者:行者123 更新时间:2023-12-02 21:54:03 24 4
gpt4 key购买 nike

我有一些来自李克特调查的数据。调查的范围是从 1 到 5。我正在计算每个问题选择的答案的百分比。我的问题是,当绘制这些百分比时,x 轴的边界似乎是无穷无尽的。这是我用来绘制的代码:

#Get the proportion table for the factored responses and melt it using the reshape2 package
#Graph it using the factor levels for X and the value converted into percentage for y

ggplot(melt(prop.table(table(factor(jsp.df$Q1,
levels =c(1, 2, 3, 4, 5))))),
aes(x=Var1, y=value*100)) +
geom_bar(stat="identity") +
labs(title = "Q1: Deaf People Will be in College\n", x = "\nLikert Factors\n", y="Percent Circled\n") +
ylim(c(0,100)) +

#Replace factor levels with label names
scale_x_discrete(breaks=c(1, 2, 3, 4, 5), labels=c("Very Good \nChance", "Fairly Good \nChance", "Some \nChance", "A Little \nChance", "No \nChance"))

结果附后。固定 x 轴的最佳方法是什么?谢谢

Results

最佳答案

熔化 prop.table() 的数据后,Var1 值是整数,而不是因子,因为级别是 1,2,.... 所以在 ggplot() 调用您需要使用 scale_x_continuous() 而不是 scale_x_discrete()

+ scale_x_continuous(breaks=c(1, 2, 3, 4, 5), 
labels=c("Very Good \nChance", "Fairly Good \nChance",
"Some \nChance", "A Little \nChance", "No \nChance"))

另一种方法是在 scale_x_discrete() 中设置 limits=。对于 limits=,您应该使用与 breaks= 相同的值。

+ scale_x_discrete(breaks=c(1, 2, 3, 4, 5), limits=c(1,2,3,4,5),
labels=c("Very Good \nChance", "Fairly Good \nChance",
"Some \nChance", "A Little \nChance", "No \nChance"))

关于r - ggplot2 中的离散 X 标签没有结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18086038/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com