2017-12-28 18 views
1

悲しいことにthis answer hereは私にとってはうまくいかないようです。Xtsオブジェクトをプロットするときの日付書式を変更するR

in the latest version, 0.10-1, the major.format parameter has been removedのドキュメントで、以前のバージョンlike 0.9-7, which has the major.formatとは対照的に、簡単に私の質問を解決することができました。

このような主な機能は廃止される予定です。これを行うための新しい方法はありますか?シンプルで簡単なものと思われますが、私はこの問題を何度も掘り下げて成功していません。

私のコードに問題がある場合、ここでは私が使っているものの抜粋です。

merra2 = read.table("C:/merra2.csv", header=TRUE, sep=",", na.strings="NA", dec=".", strip.white=TRUE) 

merra2$utc = as.POSIXct(merra2$utc, format = "%Y-%m-%d %H:%M:%S", tz="UTC") 
merra2$m2_power = as.xts(x=merra2[,"m2_power"],order.by=merra2[,"utc"]) 
merra2$doy = as.xts(x=merra2[,"doy"],order.by=merra2[,"utc"]) 

plot.xts(merra2$m2_power, col="blue", lwd = 2, major.ticks="weeks", subset="2012-04-01/2014-04-01") 
plot.xts(merra2$m2_power, col="blue", lwd = 2, major.ticks="months", subset="2012-04-01/2014-04-01") 

、入力ファイルのようなものが含まれます。私はmajor.formatパラメータ、何も変更を追加した場合、軸は同じまま

utc,m2_power,doy 
"1980-01-01 00:00:00",643.000,181.5000 
"1980-01-01 01:00:00",643.000,181.4583 
"1980-01-01 02:00:00",354.000,181.4167 

を。ここで

答えて

0

、reproductible例:あなたは "major.ticks" 軸の変更を変更した場合

# Generate a sequence of Dates 
StartDate<-"2017-07-01" 
EndDate<- "2018-07-05" 

dates<-seq(as.POSIXct(StartDate, format="%Y-%m-%d", tz="UTC") 
    , as.POSIXct(EndDate, format="%Y-%m-%d", tz="UTC") 
    , by='mins') 

# Generate a sequence of x 
x <- seq(1, length(dates)) 

# Create a dataframe, renaming columns 
df <- as.data.frame(cbind(as.character(dates,format="%Y-%m-%d", tz="UTC"),x)) 
colnames(df) <- c("Dates","x") 

# Redefine format 
df$Dates <- as.POSIXct(df$Dates,format="%Y-%m-%d", tz="UTC") 
df$x2 <- as.xts(x= as.numeric(df$x),order.by=df$Dates) 

# Plot results 
plot.xts(df$x2 
, col="blue" 
, lwd = 2 
, major.ticks="weeks" 
, major.format = TRUE 
, subset="2017-08-01/2017-08-30") 

は...あなたは "UTC" 変数の表情を取ることがありますか?完全な時間間隔は何ですか?

+0

"major.ticks"は軸を変更しますが、major.format = "%Y"などはまったく関係ありません。 major.formatに渡されるものはすべて無視され、私の目的は軸の日付をフォーマットすることです。私が変更した場合、あなたの例と同じです(例えば、major.format = "%Y-%m")。 – Miguel

関連する問題