R中ggplot上的自动缩放图例

时间:2013-05-31 20:15:00

标签: r ggplot2

我试图在R中使用ggplot2绘制大量数据点。我试图绘制三维数据(即东边,北边和高程)。我想要实现的是当我更改xlimits或scale_x_continuous时,图例将自动更新到当前范围。

例如,我使用的语法如下:

可以在以下位置找到数据:https://www.dropbox.com/s/64x9374y2zip6f7/data-river.csv

p <- ggplot(data1,aes(x=x,y=y,color=z),size=1)+geom_point()
p

我得到的输出如下:

enter image description here

然后我使用以下语法更改x和y轴限制:

p1 <- ggplot(data1,aes(x=x,y=y,color=z),size=1)+geom_point()+scale_x_continuous(limits = c(470000,472500))+scale_y_continuous(limits=c(3704000,3706000))
p1

输出如下:

enter image description here

因为,我们可以看到两个图中的范围都有变化,但图例比例不会改变。我不知道如何使用自动缩放视图更改图例。我不知道是否有可能在ggplot中。

如果有人可以指出如何使用多种颜色制作图表,我也将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:2)

您可以将数据子集()仅包含您要绘制的区域

p1 %+% subset(data1, x < 472500 & x > 470000 & y < 3706000 & y > 3704000)

对于颜色,请查看?scale_colour_gradientn