调整ggplot中的比例尺

3

可能重复:
ggplot2中的自动非等距间断

我正在创建一个ggplot2热力图表。我的数据如下:

df    

 Date    Value     Desc
1/1/2012 40       Brasil
1/1/2012  90      Argentina
1/1/2012  10      England
1/1/2012   5      China
2/1/2012 40       Brasil
2/1/2012  90      Argentina
2/1/2012  10      England
2/1/2012   24      China
3/1/2012 40       Brasil
3/1/2012  90      Argentina
3/1/2012  10      England
1/1/2012   0      China


ggplot(df, aes(Date, Desc, fill=Value)) + geom_tile(colour="white") + scale_fill_gradient(low="white", high="red"")

ggplot默认将其比例尺设置为10到50等,并在右侧作为图例显示。我该如何手动更改这个比例尺?而不是使用10、15、20、60等。我想按照最低到最高的顺序设置分割点。

1个回答

7

我想你需要使用breaks参数。请查看?scale_fill_gradient了解其描述:

ggplot(df, aes(Date, Desc, fill=Value)) + 
  geom_tile(colour="white") + 
  scale_fill_gradient(low="white", 
                      high="red", 
                      breaks=seq(min(df$Value), max(df$Value), by=30))

谢谢@Justin。一个快速的问题,如果最小值和最大值有很多小数点,我想让它成为一个没有小数点的数字。 - user1471980
@user1471980,你可以查看?round以获取各种选项。 - Justin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接