Как создать сюжет с настроенными точками в R? - PullRequest
3 голосов
/ 31 марта 2012

Я знаю, что могу создать график с линией и точками, используя аргумент type = "o" в команде plot.Я хотел бы иметь больше контроля над этим - я хочу иметь возможность рисовать букву "o" в виде полных точек, с черной рамкой и цветом заливки на мой выбор, настроенного размера и другогоцвет, чем линия.То же самое для линии, я хочу сделать ее толще, и на мой выбор цвета.Как бы я продолжил делать это?

То, что я нашел до сих пор, - это просто

 plot(y, type= "o")

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

Ответы [ 2 ]

14 голосов
/ 01 апреля 2012

Вся необходимая информация должна присутствовать в ?plot и ?points, как предложено @BenBolker.В частности, вы хотите использовать pch=21 и указать цвет фона с аргументом bg, размер с cex и ширину линии с lwd.

Если вы хотите, чтобы линия отличалась по толщине от границ точек, необходимо сначала построить линию, а затем наложить точки.

Например:

y <- sample(10)
plot(y, lwd=6, type='l')
points(y, bg='tomato2', pch=21, cex=3, lwd=3) # tomato2 is a personal fave

enter image description here

Вы также можете указать вектор lwd, cex и col для вызова точек:

plot(y, lwd=6, type='l')
points(y, bg=rainbow(10), pch=21, cex=seq(1, by=0.2, length.out=10), 
       lwd=seq(2, by=1, length.out=10))

enter image description here

9 голосов
/ 31 марта 2012

Вы можете использовать многоуровневую структуру (я больше не работаю в базе как социальный исследователь, мне нравится facet_grid в ggplot, так что может быть лучше), например:

x <- sort(rnorm(25))
y <- sort(rnorm(25))
z <- as.factor(sample(LETTERS[1:5], 25, r=TRUE))

plot(x, y, pch = 19, cex = 1.3)
par(new = TRUE)
plot(x, y, pch = 19, cex = 1, col = z)

Что дает вам: enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...