2014-01-21 4 views
1

Я хотел бы изменить размер строки с непрерывной переменной. Теперь я использовал geom_line с размером эстетики. Например:Размер переменной строки с использованием ggplot2

x <- 1:100 
y <- x * x 
z <- abs(cos(x * pi/(max(x)))) 

df <- data.frame(x = x, y = y, z = z) 
library(ggplot2) 

ggplot(df, aes(x, y, size = z)) + geom_line() 

Но между сегментами есть несколько пробелов (см. Рисунок ниже. Пожалуйста, увеличьте масштаб, чтобы увидеть пробелы). кажется, ggplot2 использует прямоугольники для построения каждого сегмента.

enter image description here

я увеличил количество точек, но до сих пространства существует для большей кривизны.

Мой вопрос заключается в том, как удалить эти пространства. Я очень ценю это за любые предложения.

+2

Вы можете использовать 'geom_ribbon' вместо этого. – Gregor

+0

Спасибо за ваши быстрые комментарии. Я просто нашел его. – Bangyou

ответ

1

Настройте множитель по своему предпочтению:

mult <- 200 
ggplot(df, aes(x, y)) + geom_line() + geom_ribbon(aes(ymin=y-mult*z, ymax=y+mult*z)) 

enter image description here

Смежные вопросы