No.09738 時間軸の表現方法  【波音】 2009/04/22(Wed) 18:11

経時データのプロットについてですが,例えば,1日の中でのインターネット回線の下り速度の変化をチェックしていくような場合には,横軸の値(時間)はどのように表現するのが適切でしょうか。

1日24時間として,0時から24時まで分単位で{0, 60(1時), 120(2時), ...}というようにするのが妥当でしょうか。

データフレームで表現すると:
観測時, 速度(Mbps)
10:00, 10.0
11:15, 7.8
14:10, 12.2
というようなデータが得られているという場合です。分で表現すると,10:00という値は60*10=600という値になって,視覚的にはよく分からない図に思えるのですが。。。(例えばプレゼンテーションのスライドを見せるときなど)

No.09739 Re: 時間軸の表現方法  【青木繁伸】 2009/04/22(Wed) 18:42

以下のようにするのではどうでしょうか。
t <- 0:(24*60)
y <- rnorm(length(t))
plot(t, y, type="l", xaxt="n")
axis(1, at=0:24*60, labels=paste(0:24, "h", sep=""))
グラフはクリックすると原寸大に拡大。


No.09741 Re: 時間軸の表現方法  【波音】 2009/04/22(Wed) 21:37

回答ありがとうございます。

60分刻みでx軸のデータを作っておいて,後からx軸のラベルだけを0hから24hと書く加えれば見やすかったのですね。

参考にしてこのようにしました:
# 時刻を小数点で記録: ex. 8.45 = 8:45, 9.20 = 9:20
ax <- c(8.45, 9.20, 9.45, 10.50, 10.43, 12.56, 13.25, 17.50, 20.56)
ax2 <- ax * 60 # 1時間60分に換算
ay <- rep(10, 9) # 速度データ
plot(ax2, ay, xlim=c(0, 1440), ylim=c(0, 15),
xlab="time", ylab="speed(Mbps)", xaxt="n", type="b")
axis(1, at=0:24*60, labels=paste(0:24, "h", sep=""))

# 2日目の観測データ
bx <- c(11.05, 11.21, 16.48, 17.28, 18.32)
bx2 <- bx * 60
by <- c(0.2, 0.8, 1.2, 6.8, 9.3)
points(bx2, by, type="b", col="red")

# 3日目のデータ(以降,同じようにする)
cx <- c(10.25, 11.01, 11.35, 12.54, 16.46, 17.55, 18.14, 20.55)
cx2 <- cx * 60
cy <- c(1.5, 0.08, 0.07, 0.9, 0.4, 1.7, 7.4, 10.0)
points(cx2, cy, type="b", col="blue")

No.09742 Re: 時間軸の表現方法  【波音】 2009/04/22(Wed) 21:43

No. 9741記事のプロットです。


No.09743 Re: 時間軸の表現方法  【青木繁伸】 2009/04/22(Wed) 22:03

ax <- c(8.45, 9.20, 9.45, 10.50, 10.43, 12.56, 13.25, 17.50, 20.56)
ax2 <- ax * 60 # 1時間60分に換算
これは,だめですよ(^_^;)
floor(ax)*60+(ax-floor(ax))*100
ですね。

No.09746 Re: 時間軸の表現方法  【波音】 2009/04/23(Thu) 10:22

すみません,自分で手計算して確認したら間違っていることが分かりました(^_^;)

● 「統計学関連なんでもあり」の過去ログ--- 042 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る