为什么我的条形图的所有频率都为 1?
Why does my bar chart have all frequencies at 1?
我正在制作用 ggplot2
制作的条形图。
table如下:
general_status size Freq
<fctr> <fctr> <dbl>
Active Large 0.0023858634
Failed Large 0.0003226497
Active Medium 0.0137466194
Failed Medium 0.0033334651
Active Micro 0.5623731202
Failed Micro 0.3130003976
Active Small 0.0850353345
Failed Small 0.0198025500
为了制作图表,我使用了代码:
g <- ggplot(freqtable, aes(size))
g + geom_bar(aes(fill=general_status), width = 0.5) +
theme(axis.text.x = element_text(angle=65, vjust=0.6)) +
labs(title="Size distribution", y = "Frequence", x = "Company size") +
facet_grid(~ general_status) +
theme_bw()
我的问题是:如何绘制正确的频率?
我的代码哪里出错了?
geom_bar
不只是直接绘制数据;它首先 计数 您 table 中的事件(它计算计数统计数据)。由于每个 general_status
事件恰好发生一次(一行),所有频率均为 1。
使用 geom_col
而不是 geom_bar
,或者传递 stat = 'identity'
来解决这个问题:这两个都将绘制指定的值(您需要指定 y = Freq
在 aes
) 而不是计算自己的统计数据。
我正在制作用 ggplot2
制作的条形图。
table如下:
general_status size Freq
<fctr> <fctr> <dbl>
Active Large 0.0023858634
Failed Large 0.0003226497
Active Medium 0.0137466194
Failed Medium 0.0033334651
Active Micro 0.5623731202
Failed Micro 0.3130003976
Active Small 0.0850353345
Failed Small 0.0198025500
为了制作图表,我使用了代码:
g <- ggplot(freqtable, aes(size))
g + geom_bar(aes(fill=general_status), width = 0.5) +
theme(axis.text.x = element_text(angle=65, vjust=0.6)) +
labs(title="Size distribution", y = "Frequence", x = "Company size") +
facet_grid(~ general_status) +
theme_bw()
我的问题是:如何绘制正确的频率? 我的代码哪里出错了?
geom_bar
不只是直接绘制数据;它首先 计数 您 table 中的事件(它计算计数统计数据)。由于每个 general_status
事件恰好发生一次(一行),所有频率均为 1。
使用 geom_col
而不是 geom_bar
,或者传递 stat = 'identity'
来解决这个问题:这两个都将绘制指定的值(您需要指定 y = Freq
在 aes
) 而不是计算自己的统计数据。