Как увеличить размер точки в решетке с помощью auto.key - PullRequest
2 голосов
/ 17 февраля 2012

С помощью аргумента решетки key я могу установить размер символов в ключе. Я не мог найти решение сделать то же самое с auto.key (что имеет много преимуществ по сравнению с ключом). Передача списка в пункты вызывает «нелогичную» ошибку.

library(lattice)
# Works to set symbol size, but needs additional work to give text etc.
xyplot(Sepal.Length + Sepal.Width ~ Petal.Length + Petal.Width | Species,
   data = iris, scales = "free", layout = c(2, 2),
   key = list(points=list(cex=2.5,pch=c(13,3,16)),x = .6, y = .7, corner = c(0, 0)))
# Fails
xyplot(Sepal.Length + Sepal.Width ~ Petal.Length + Petal.Width | Species,
   data = iris, scales = "free", layout = c(2, 2),
   auto.key = list(points=list(cex=2.5,pch=c(13,3,16)),
      x = .6, y = .7, corner = c(0, 0)))

1 Ответ

5 голосов
/ 18 февраля 2012

Посмотрите, если это даст вам варианты (адаптировано из предложения Sarkar относительно auto.key). Значение по умолчанию, равное 3, установленное simpleTheme, изменяется, поэтому точки на графике равны cex = 1, но значение по умолчанию переносится в auto.key, который выглядит как ваш (за исключением цветов, которые, как мне показалось, выглядели лучше, но на вкус будет варьироваться):

xyplot(Sepal.Length + Sepal.Width ~ Petal.Length + Petal.Width | Species,
                   data = iris, scales = "free", layout = c(2, 2), cex=1,
        par.settings = simpleTheme(col=c("blue","red"),
                                   pch=c(13,3,16), cex=3, lwd=2),
        auto.key = list(points=TRUE,text=c("","",""),
                        x = .6, y = .7, corner = c(0, 0)) )
...