Как определить, какая линия на графиках R? - PullRequest
0 голосов
/ 12 декабря 2018

В настоящее время у меня есть некоторые данные временных рядов, и я строю их.

Когда я строю график, каждая отдельная линия появляется в другом цвете, это хорошо, однако я не знаю, какой цвет соответствует какомунабор данных.

Ниже приведены некоторые из моих данных и отображаемый график.

head(dbtw) NSW1.Price Coal Gas Hydro PV Solar Wind 2018-01-01 10:30:00 71.34571 71.07403 89.78488 80.62076 75.73009 76.06731 71.07516 2018-01-08 10:30:00 69.84917 75.57009 90.70968 85.53869 81.16248 81.35853 74.72455 2018-01-15 10:30:00 73.28426 71.11159 84.50934 79.76321 73.85233 73.46695 67.40529 2018-01-22 10:30:00 73.53699 83.50025 93.42689 95.70735 93.25567 93.78646 80.18604 2018-01-29 10:30:00 85.63705 81.84558 92.62425 92.18889 92.76306 92.07045 78.42529 2018-02-05 10:30:00 72.72682 72.26647 86.09123 81.15528 75.74744 76.10385 68.83338

Когда я набираю plot(dbtw), это то, что появляется:

time-series plot

1 Ответ

0 голосов
/ 12 декабря 2018

Вы можете использовать addLegend, но хитрость в том, что вам нужно указать lty или lwd.Это потому, что:

  • addLegend по сути является оберткой вокруг legend
  • help(legend) говорит нам, что lty, lwd the line types and widths for lines appearing in the legend. One of these two must be specified for line drawing.
  • Быстрое погружение вИсходный код addLegend (View(addLegend) в RStudio) говорит нам, что он не указывает ни того, ни другого.

Подводя итог длинной истории.Вот пример:

library(xts)
data("anscombe", package = "datasets")
ans6 <- xts(anscombe[, 1:6], order.by = as.Date("2008-01-01") + 1:nrow(anscombe))

## Will NOT have the line colors
plot(ans6)
addLegend()

enter image description here

## Will have the line colors
plot(ans6)
addLegend(lty = 1)
## addLegend(lwd = 1) # this would also work

enter image description here

...