在ggplot2中的数据点处绘制带有暗点的粗线

时间:2012-11-25 23:16:17

标签: r ggplot2 appearance

我想绘制路径并显示数据点的位置。

Combine Points with lines with ggplot2 使用geom_point() + geom_line(),但我不喜欢点更粗,线条有不连续的外观- x - x ----- x ---因此我决定

创建我自己的虚线:

mya <- data.frame(a=1:20)

ggplot() +
  geom_path(data=mya, aes(x=a, y=a, colour=2, size=1)) +
  geom_point(data=mya, aes(x=a, y=a, colour=1, size=1)) +
  theme_bw() +
  theme(text=element_text(size=11))

example of a nice line

我喜欢点和线的大小相同。我没有使用alpha通道,因为当我将文件包含在其他程序中时,我担心alpha通道会出现问题。

未解决的问题:

  • R不应该创建那些图例
  • 可以R计算出“深色”本身吗? darker(FF0000) = AA0000
  • 我怎样才能操纵线条? size=
  • R 2.15参数未按预期运行

1 个答案:

答案 0 :(得分:4)

可以在ggplot调用中设置或映射美学。

  • aes(...)中定义的美学从数据映射,并创建一个图例。
  • 美学也可以通过在aes()之外定义来设置为单个值。

在您的情况下,您似乎想要将大小设置为单个值。您还可以使用scale_..._manual(values = ..., guide = 'none')来禁止创建图例。 这似乎是colour所需的内容。

然后,您可以使用lightbluedarkblue等命名颜色(有关详细信息,请参阅?colors

ggplot() +
 geom_line(data=mya, aes(x=a, y=a, colour='light'), size = 2) +
 geom_point(data=mya, aes(x=a, y=a, colour='dark'), size = 2) + 
 scale_colour_manual(values = setNames(c('darkblue','lightblue'), 
                                       c('dark','light')), guide = 'none') +
 theme_bw()

enter image description here