ggplot
を使用して時系列をプロットしようとしていますが、日時を別のデータフレーム列に格納しています。 ggplotにプロットの日付と時刻の両方を考慮させるにはどうすればよいですか?ggplot2の時系列:異なる列からの日数と時間の使用
#Tagua <- read.table(file = "TIMESERIE_OTO32.txt", header = TRUE,dec = ",")
Tagua <- structure(
list(
Date = structure(c(1L, 1L, 2L, 2L), .Label = c("Day1", "Day2"), class = "factor"),
Hour_min = structure(c(1L, 2L, 1L, 2L), .Label = c("8:35", "8:36"), class = "factor"),
Tair = c(24.73, 24.29, 23.62, 24.29),
Tflower = c(29.79, 29.99, 30.37, 29.99),
Tbud = c(31.41, 31.82, 32.59, 31.82)
),
.Names = c("Date", "Hour_min", "Tair", "Tflower", "Tbud"),
class = "data.frame",
row.names = c(NA, -4L))
日、時間、および花のさまざまな部分からの3温度:私のデータは、この
Date Hour_min Tair Tflower Tbud
Day1 8:35 24,73 29,79 31,41
Day1 8:36 24,29 29,99 31,82
... .. .. ... ...
Day2 00:00 23,62 30,37 32,59
のように見えます
一つは、これでデータセットの小さなサンプルをロードすることができます。 私は1400分を2日間持っています。
私はこのスクリプトを書いた:
library(ggplot2)
ggplot(aes(x = (Hour_min), group=1), data = Tagua) +
geom_line(aes(y = Tair, colour = "var1")) +
geom_line(aes(y = Tbud, colour = "var2")) +
geom_line(aes(y = Tflower, colour = "var3"))
問題は日考慮せずに、(もちろん)午後12時00から23へのRプロットです。
どうすればこの問題を解決できますか?
可能であれば、時間軸に対応するx軸の目盛り(たとえば、2:00,3:00など)を設定したいと考えています。
あなたが一日と時間の列から日付時刻変数を作成する必要があります。 2つの列からdatetime変数を作成する方法を見ているよりも、「日付」列に「day1」の代わりに実際の日付を割り当ててください(packageb'lubridate'はそれにいくつかの機能を持つかもしれません) – lbusett
そして、もしそうでなければ'period'(曜日= 0、時間= 8、分= 35)、実際の日(ちょうどその日を過ぎた日)を気にすると、 'lubridate'パッケージの' Date'sの代わりに ' '。 また、単純なデモデータセットを提供すると、例えば' dput(head(Tagua)) 'のようにあなたを助けるのがはるかに簡単になります。 – zeehio