3

多くのイベントを含むデータ フレームがあり、それぞれにタイムスタンプがあります。

これの 2 次元プロットが必要です: x 軸は日を表し、y 軸は 1 日の時間 (時間など) を表し、この日のこの時間のイベント数は色で表されます (または別の方法でしょうか? ) 対応するセルの。

まず使ってみた

     ggplot(events) + 
      geom_jitter(aes(x = round(TimeStamp / (3600*24)), 
                      y = TimeStamp %% (3600*24))), 

しかし、多数のイベント (1 か月あたり 100 万件以上) があるため、特定の時間にイベントがあったという事実だけを確認することができます (ほとんどすべてのセルが黒で塗りつぶされているだけです)。それで、問題は - Rでそのようなプロットを作成する方法は?

4

2 に答える 2

3

あなたはhexbinプロットを作ることができます:

set.seed(42)
events <- data.frame(x=round(rbinom(1000,1000, 0.1)),y=round(rnorm(1000,10,3)))
library(ggplot2)
library(hexbin)
p1 <- ggplot(events,aes(x,y)) + geom_hex()
print(p1)

hexbinプロット

于 2012-12-16T10:41:38.167 に答える
2

私がやっている方法は、各イベントに小さなアルファ (つまり透明度) を使用して、重ね合わせイベントの (累積された) アルファが高くなるようにすることです。これにより、重ね合わせイベントの数がわかります。

library(ggplot2)
events <- data.frame(x=round(rbinom(1000,1000, 0.1)),y=round(rnorm(1000,10,3)))
ggplot(events)
+ geom_point(aes(x=x, y=y), colour="black", alpha=0.2)

ここに画像の説明を入力

別の解決策は、それをヒートマップとして表すことです。

 hm <- table(events)
 xhm <- as.numeric(rownames(hm))
 yhm <- as.numeric(colnames(hm))
 image(xhm,yhm,hm)

ここに画像の説明を入力

于 2012-12-16T10:27:13.220 に答える