Как добавить линии между точками, не "касаясь" точек, как в "type = 'b'"? - PullRequest
3 голосов
/ 20 мая 2011

Я хотел бы добавить линии между точками на графике в R. Но не между всеми ними.

Поэтому я использую «линии».Но я хотел бы сохранить стиль "type = 'b'", с остановкой линии непосредственно перед точкой.

Ответы [ 3 ]

9 голосов
/ 20 мая 2011

Если ggplot - ваша вещь, дайте этому водоворот.ggplot изначально не поддерживает type = "b", как в базовой графике.Мы можем обойти это, хотя с некоторой перепланировкой и поднабором:

library(ggplot2)
x <- seq(1, pi, pi/36)
y <- sin(x)
z <- data.frame(x,y)



ggplot(z, aes(x,y)) + 
    geom_line(data = subset(z, x > 1.5 & x < 2.5)) + 
    geom_point(size = 6, colour = "white") +
    geom_point(size = 3, colour = "black") +
    theme_bw()

enter image description here

5 голосов
/ 20 мая 2011

Настройка некоторых данных

x <- seq(1, pi, pi/36)
y <- sin(x)

Создание графика со всеми точками

plot(x, y)

Добавление линий type="b" для некоторых точек:

lines(x[10:20], y[10:20], type="b")

enter image description here

0 голосов
/ 20 мая 2011

Вы можете использовать функцию линий с type = 'c', чтобы просто добавить линии с пробелами вокруг точек. Просто дайте функции линий подмножество, для которого вы заинтересованы в создании линий.

...