1

特定の種類のグラフを作成する方法を理解しようとしています。R や ggplot2 で行うのは非常に簡単なことのように見えますが、それを説明する適切なキーワードが見つからないはずです。さまざまなgeomを閲覧し、いくつかのガイドを読みましたが、手ぶらで出てきました.

本質的な問題は次のとおりです。電子メールのリストと、それらが送信された日 (1970 年 1 月 1 日からの日数として定義) があります。ごとに送信された電子メールbinwidthを示すグラフを作成しました。たとえば、1 日に 1 通のメールを送信binwidthして 30 日に設定した場合、バーの高さは 30 になります。

私がやろうとしているのは、次のようなグラフを作成することです。

ここに画像の説明を入力

上のグラフは、x 軸にメールの量があり、y 軸はメールの数がその量に対応する日数を示しています。

したがって、データの例として、メールが送信された日のリストは次のとおりです。

data <- c( 15562,15562,15562,15562,15563,15564,
           15564,15564,15566,15566, 15566,15566)

高さ 4、1、3、および 4 の棒グラフ (各日のメール数に対応) ではなく、高さ 1、1、および 2 の棒グラフが必要です (1 日が 1 日あるため)。メールが 1 回送信された日、1 日で 3 件のメールが送信された日、2 日で 4 件のメールが送信された日)。

例のグラフのように、連続した x 軸が必要です。

上記のようなグラフを作成する方法を知っている人はいますか?

4

2 に答える 2

1
dat <- c(15562,15562,15562,15562,15563,15564,15564,15564,15566,15566,15566,15566)
table(table(dat))
#1 3 4 
#1 1 2

#example with more data
set.seed(42)
dat <- sample(1:500,50000,TRUE)
hist(table(table(dat)),breaks=20)
于 2012-11-09T20:48:29.223 に答える
1

Stephen Wolfram の個人分析プロットを複製したい人がいますか? ;-)

Wolfram が使用してきたMathematicaスタイルのビジュアライゼーションに近い結果を得るには、を使用するのが最善latticeだと思います。

library(lattice)
library(latticeExtra)
histogram(~ FSC.H, gvhd10, xlab = "", ylab="", type = "density", 
          col="yellow", nint = 100, scales = list(y=list(draw=F)))
ltext(400,110,col="gray","distribution of emails per day")

ここに画像の説明を入力

于 2012-11-10T15:53:45.280 に答える