我有这些数据:
No Yes
Female 411 130
Male 435 124
Run Code Online (Sandbox Code Playgroud)
这是使用标准表命令创建的.现在有了情节,我可以这样绘制:
plot(table(df$gender, df$fraud))
然后它输出一个2x2条形图.
所以我的问题是,我怎么能用ggplot2做到这一点?有没有办法将table-object转换为数据框?我会这样做,但它变得一团糟,然后你需要重命名列和行标题,它只是变得一团糟,这是一个非常简单的事情?
Wal*_*ltS 19
像这样的东西
ggplot(as.data.frame(table(df)), aes(x=gender, y = Freq, fill=fraud)) +
geom_bar(stat="identity")
Run Code Online (Sandbox Code Playgroud)
获得具有最小重新标记量的类似图表.
ggplot2 使用数据框架,因此,您必须将表格转换为框架。这是示例代码:
myTable <- table(df$gender, df$fraud)
myFrame <- as.data.frame(table(myTable))
Run Code Online (Sandbox Code Playgroud)
现在,您可以在 ggplot2 中使用 myFrame:
ggplot(myFrame, aes(x=gender))+
geom_bar(y = Freq)
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅强制数据帧。
| 归档时间: |
|
| 查看次数: |
37403 次 |
| 最近记录: |