ここに来るのは初めてなので、間違っていないことを願っています。
私は、さまざまな種の木材含水率のさまざまな測定値とさまざまな指標のデータベースを持っています。これらの措置は、2 時間ごとに 6 か月間行われています。
さまざまな場所で使用できるスクリプトを作成しようとしています。これまでのところ、グラフをうまく見せることができましたが、凡例で行き詰まっています。軸を作成するには、線の日付と時間を組み合わせる必要がありました。これは、毎週金曜日の 00:00 の目盛りだけが必要だったからです。
特定の色と異なる形状のカスタム ラインを作成してから凡例を作成しようとすると、問題が発生しました。色を変更したため、グラフとは一致しませんが、凡例では変更されていません。凡例に表示される名前の順序も変更しましたが、色はデフォルトのままで、名前によって変更されません。キーで手動でやろうとすると、線の色は常に黒で、ドットもありません。
ペイントでプロットを修正しました。はい、本当に恥ずかしいですが、それを配信する必要がありました。しかし、私はそれをもっと行う必要があるので、最終的な解決策を見つけようとしています. 投稿にバグがあることを発見し、手動の方法を提案しましたが、そのようにできるかどうかわかりません…だから、もっと簡単な方法でそれを行う方法を誰かが知っていれば.
これまでのところ、私の試みは次のとおりです。
a) デフォルトの色と編成
grafico_juan <- read.table("C:/Users/JFG/Desktop/graf_juan2.txt", header=TRUE, sep="\t", na.strings="NA",dec=",", strip.white=TRUE)
library(relimp, pos=14)
library(lattice, pos=15)
library(grid, pos=15)
str(grafico_juan)
grafico_juan[, "Date"] <- as.Date(as.character(grafico_juan[, "Date"]), format = "%d.%m.%y")
str(grafico_juan)
grafico_juan[, "D.T"] <- as.POSIXct(grafico_juan$D.T, format = "%d.%m.%y %H:%M:%S")
str(grafico_juan)
day=format(grafico_juan$D.T,"%a")
data.frame(grafico_juan,day)
#para seleccionar la parte que me hace falta para los puntos y las líneas
grafico_juan2<-subset(grafico_juan, subset = (Time == "00:00:00") & (day == "vie"), selct= Date:PRMMTC)
grafico_juan3<-subset(grafico_juan, subset = (Time =="00:00:00"),select = Date:PRMMTC)
data.frame(grafico_juan)
str(grafico_juan2)
str(grafico_juan3)
xyplot(CSC + EUC + PCC + PLC + PRC + PRMMTC + PSC ~ D.T, type="l", cex=1, xaxt="n", auto.key=list(space="top",border=TRUE, columns=7, lines= T, points = F), par.settings = list(superpose.line = list(lwd=2)), scales=list(x=list(at=grafico_juan2$D.T, labels=format(grafico_juan2$D.T,"%d/%m"),rot=0, cex = 1, relation='free'), y=list(at= seq(from=2,to=nrow(grafico_juan), by=1),tick.number=52, rot=0, cex = 1, relation='free')), abline = list(h = 3:60, v = grafico_juan2$D.T, col = "grey"), data=grafico_juan, xlab="DATE (dd/mm)", ylab="MC (%)")
b) 順序と色の変更
xyplot(CSC + EUC + PCC + PLC + PRC + PRMMTC + PSC ~ D.T,
type="l",col=c("green", "turquoise" ,"blue" , "green4", "deeppink",
"black","red"),lty=c(1,1,1,1,1,1,3), cex=3, xaxt="n",
auto.key=list(space="top",border=TRUE, columns=7, lines= T,
points = F, text=c("PL", "PS", "PR", "PC", "PRMMT", "CS", "EU")),
par.settings = list(superpose.line = list(lwd=2)),
scales=list(x=list(at=grafico_juan2$D.T,
labels=format(grafico_juan2$D.T,"%d/%m"),rot=0, cex = 1,
relation='free'), y=list(at= seq(from=2,to=nrow(grafico_juan),
by=1),tick.number=52, rot=0, cex = 1, relation='free')),
abline = list(h = 3:60, v = grafico_juan2$D.T, col = c("grey")),
data=grafico_juan, xlab="DATE (dd/mm)", ylab="MC (%)")
c) as.layer として実行し、auto.key の代わりにキーを使用しても、線に色を付けたり、点線を付けたりしないため、同じ問題が発生します。
a<-xyplot(CSC + EUC + PCC + PLC + PRC + PRMMTC + PSC ~ D.T, type="", cex=3, xaxt="n", key= list(text=list(levels=c("PL", "PS", "PR", "PC", "PRMMT", "CS", "EU")), lines= TRUE, border=TRUE, columns=7, fill=c("green4", "red", "deeppink","blue", "black", "green", "turquoise")) , par.settings = list(superpose.line = list(lwd=2)), scales=list(x=list(at=grafico_juan2$D.T, labels=format(grafico_juan2$D.T,"%d/%m"),rot=0, cex = 1, relation='free'), y=list(at= seq(from=2,to=nrow(grafico_juan), by=1),tick.number=52, rot=0, cex = 1, relation='free')), abline = list(h = 3:60, v = grafico_juan2$D.T, col = c("grey")), data=grafico_juan, xlab="DATE (dd/mm)", ylab="MC (%)")
b<-xyplot(PLC ~ D.T, type="l",col= "green4" , cex=1, xaxt="n", auto.key=FALSE, par.settings = list(superpose.line = list(lwd=2)), data=grafico_juan, xlab="", ylab="")
c<-xyplot(PSC ~ D.T, type="l",col= "red" , cex=1, xaxt="n", auto.key=FALSE, par.settings = list(superpose.line = list(lwd=2)), data=grafico_juan, xlab="", ylab="")
d<-xyplot(PRC ~ D.T, type="l",col= "deeppink" , cex=1, xaxt="n", auto.key=FALSE, par.settings = list(superpose.line = list(lwd=2)), data=grafico_juan, xlab="", ylab="")
e<-xyplot(PCC ~ D.T, type="l",col= "blue" , cex=1, xaxt="n", auto.key=FALSE, par.settings = list(superpose.line = list(lwd=2)), data=grafico_juan, xlab="", ylab="")
f<-xyplot(PRMMTC ~ D.T, type="l",col= "black" , cex=1, xaxt="n", auto.key=FALSE, par.settings = list(superpose.line = list(lwd=2)), data=grafico_juan, xlab="", ylab="")
g<-xyplot(CSC ~ D.T, type="l" ,col= "green", cex=1, xaxt="n", auto.key=FALSE, par.settings = list(superpose.line = list(lwd=2)), data=grafico_juan, xlab="", ylab="")
h<-xyplot(EUC ~ D.T, type="l",col= "turquoise" , lty=3 ,cex=1, xaxt="n", auto.key=FALSE, par.settings = list(superpose.line = list(lwd=2)), data=grafico_juan, xlab="", ylab="")
library(latticeExtra)
a + as.layer(b) + as.layer(c) + as.layer(d) + as.layer(e) + as.layer(f) + as.layer(g) + as.layer(h)
理想的なものは、この最後の写真のようである必要がありますが、正しい凡例があります。
データが必要かどうかはわかりませんが、あまりにも多くの文字を入れることができないため、D.T
列Date
と列Time
が同じ列にあるため、その一部を提供します。
Date Time D.T EUC PLC PCC PSC PRC CSC PRMMTC
12.03.15 14:00:00 12.03.15 14:00:00 11 9,3 6,8 9,1 9,6 3 6
12.03.15 16:00:00 12.03.15 16:00:00 11,2 9,3 6,6 9,2 9,2 8,9 6,6
12.03.15 18:00:00 12.03.15 18:00:00 11,7 9,7 6,6 9,6 9,6 9,2 7,4
12.03.15 20:00:00 12.03.15 20:00:00 11,6 9,6 6,5 9,6 9,5 9,1 7,6
12.03.15 22:00:00 12.03.15 22:00:00 11,6 9,6 6,5 9,6 9,6 9,1 7,6
13.03.15 00:00:00 13.03.15 00:00:00 11,7 9,7 6,6 9,6 9,6 9,2 7,7
13.03.15 02:00:00 13.03.15 02:00:00 11,8 9,8 6,6 9,6 9,6 9,2 7,7
13.03.15 04:00:00 13.03.15 04:00:00 11,7 9,8 6,6 9,6 9,8 9,2 7,7
13.03.15 06:00:00 13.03.15 06:00:00 11,7 9,7 6,6 9,7 9,7 9,2 7,7
13.03.15 08:00:00 13.03.15 08:00:00 11,9 9,8 6,7 9,8 10 9,3 7,9
13.03.15 10:00:00 13.03.15 10:00:00 11,7 9,8 6,6 9,8 9,8 9,2 7,7
13.03.15 12:00:00 13.03.15 12:00:00 11,7 9,9 6,9 9,9 10 9,3 7,7
13.03.15 14:00:00 13.03.15 14:00:00 11,9 10 6,9 9,9 10,1 9,4 7,7
13.03.15 16:00:00 13.03.15 16:00:00 11,8 10 6,9 10 10,2 9,3 8