[ ПЕРЕСМОТР & Изменено]
Когда plot.type
является "multiple"
, мы не можем определить ylab
непосредственно. Оба метода plot(ts.obj)
(S3
) и plot(timeSeries.obj)
(S4
метод) принимают colnames(obj)
как ylab
, и я не знаю никаких методов использования греческих букв как colname. (Разница в структуре в основном исходит от разницы S3
и S4
; colnames(timeSeries.obj)
эквивалентна [email protected]
; по умолчанию Series i
и TS.i
).
Мы можем вмешаться ylab
помощью arugument, panel
(Он хочет function
и по умолчанию lines
). Он используется в for(i in 1:ncol(data))
. Я не мог дать panel.function
подходящий "i"
(я думаю, это может быть в некотором роде, но я не придумал), поэтому я получил "i"
, используя данные, совпадающие с данными.
для timeSeries
ylabs <- expression(alpha, beta, gamma, delta)
row1 <- LPP[1,]
timeSeries.panel.f <- function(x, y, ...) {
lines(x, y, ...)
mtext(ylabs[which(row1 %in% y[1])], 2, line = 3)
}
plot(LPP, panel = timeSeries.panel.f, type = "o", ann = F)
title("Title")
mtext("Time", 1, line = 3)
## If you aren't so concerned about warnings, here is more general.
## (Many functions read `...` and they return warnings).
timeSeries.panel.f2 <- function(x, y, ..., ylabs = ylabs, row1 = row1) {
lines(x, y, ...)
mtext(ylabs[which(row1 %in% y[1])], 2, line = 3)
}
plot(LPP, panel = timeSeries.panel.f2, type = "o", ann = F,
ylabs = expression(alpha, beta, gamma, delta), row1 = LPP[1,])
title("Title")
mtext("Time", 1, line = 3)
для ts
ylabs <- expression(alpha, beta, gamma)
row1 <- z[1,]
ts.panel.f <- function(y, ...) {
lines(y, ...)
mtext(ylabs[which(row1 %in% y[1])], 2, line = 3)
}
plot(z, panel = ts.panel.f, ann = F)
title("Title")
mtext("Time", 1, line = 3)
Конечно вы можете АРХИВ его, используя новые функции, сделанные из оригинала (в основном такой же, как оригинал) , Я показал только измененные точки.
модифицированного plot(ts.obj)
(из plot.ts
)
my.plot.ts <- function(~~~, my.ylab = NULL) {
:
nm <- my.ylab # before: nm <- colnames(x)
:
}
# use
my.plot.ts(z, my.ylab = expression(alpha, beta, gamma), type = "o")
модифицированного plot(timeSeries.obj)
# made from `.plot.timeSeries`
my.plot.timeSeries <- function(~~~, my.ylab = NULL) {
:
my.plotTimeSeries(~~~, my.ylab = my.ylab)
}
# made from `timeSeries:::.plotTimeSeries`
my.plotTimeSeries <- function(~~~, my.ylab) {
:
nm <- my.ylab # before: nm <- colnames(x)
:
}
#use
my.plot.timeSeries(LPP, my.ylab = expression(alpha, beta, gamma, delta), type="o")