ggplot2 の使用
ggplot2
と_geom_bar
- 長形式で作業する
- パーセンテージを事前に計算する
例えば
library(reshape2)
library(plyr)
# long format with column of proportions within each id
xlong <- ddply(melt(x, id.vars = 'id'), .(id), mutate, prop = value / sum(value))
ggplot(xlong, aes(x = id, y = prop, fill = variable)) + geom_bar(stat = 'identity')
# note position = 'fill' would work with the value column
ggplot(xlong, aes(x = id, y = value, fill = variable)) +
geom_bar(stat = 'identity', position = 'fill', aes(fill = variable))
# 上記と同じプロットを返します
ベース R
テーブル オブジェクトは、モザイク プロットとしてプロットできます。を使用してplot
。あなたx
は(ほとんど)テーブルオブジェクトです
# get the numeric columns as a matrix
xt <- as.matrix(x[,2:4])
# set the rownames to be the first column of x
rownames(xt) <- x[[1]]
# set the class to be a table so plot will call plot.table
class(xt) <- 'table'
plot(xt)
mosaicplot
直接使用することもできます
mosaicplot(x[,2:4], main = 'Proportions')