明確化された Q に照らして更新
set.seed(1)
dat2 <- data.frame(fac = factor(sample(LETTERS, 100, replace = TRUE)))
hist(table(dat2), xlab = "Frequency of Level Occurrence", main = "")
与えます:

ここではhist()
、 の結果に直接適用するだけですtable(dat)
。table(dat)
因子のレベルごとの度数を提供し、hist()
これらのデータのヒストグラムを生成します。
オリジナル
いくつかの可能性があります。あなたのデータ:
dat <- data.frame(fac = rep(LETTERS[1:4], times = c(3,3,1,5)))
列 1 から上に順に 3 つあります。
- クラス のデフォルトのプロット メソッドは
"table"
、データとヒストグラムのようなバーをプロットします
- 棒グラフ - おそらくヒストグラムの意味です。ここでインクと情報の比率が低いことに注意してください
- ドット プロットまたはドット チャート。他のプロットと同じ情報を表示しますが、単位情報あたりのインク使用量ははるかに少なくなります。好ましい。
それらを生成するコード:
layout(matrix(1:4, ncol = 2))
plot(table(dat), main = "plot method for class \"table\"")
barplot(table(dat), main = "barplot")
tab <- as.numeric(table(dat))
names(tab) <- names(table(dat))
dotchart(tab, main = "dotchart or dotplot")
## or just this
## dotchart(table(dat))
## and ignore the warning
layout(1)
これにより、次が生成されます。

変数にデータがあるだけの場合factor
(ちなみに名前の選択が悪い) 、コード例でtable(factor)
はなく、table(dat)
またはtable(dat$fac)
コード例で使用できます。
lattice
完全を期すために、必要な向きを取得できるため、ドット プロットの作成に関しては、packageの方が柔軟です。
require(lattice)
with(dat, dotplot(fac, horizontal = FALSE))
与える:

そしてggplot2
バージョン:
require(ggplot2)
p <- ggplot(data.frame(Freq = tab, fac = names(tab)), aes(fac, Freq)) +
geom_point()
p
与える:
