2010-10-22 85 views
16

我就整理了一个图形工作使用GGPLOT2是这样的...如何格式化ggplot2图例的数值?

ggplot(timeSeries, aes(x=Date, y=Unique.Visitors, colour=Revenue)) 
+ geom_point() + stat_smooth() + scale_y_continuous(formatter=comma) 

我重视的结果,你可以看到在图例收入的数值没有逗号产生。我怎样才能为这些值添加逗号?我能够使用scale_y_continuous作为轴,可以用于图例吗?

alt text

回答

10

注意2014年7月16日:在这个答案的语法已经过时了一段时间。使用metasequoia's answer!


是的 - 只是得到的事情的权利scale_colour_层想通了。尝试:

ggplot(timeSeries, aes(x = Date, y = Unique.Visitors, colour = Revenue)) + 
    geom_point() + 
    stat_smooth() + 
    scale_y_continuous(formatter = comma) + 
    scale_colour_continuous(formatter = comma) 

我个人也会将我的颜色映射到geom_point层,因此它不会给你图例中的点背后的奇数行:

ggplot(timeSeries, aes(x = Date, y = Unique.Visitors)) + 
    geom_point(aes(colour = Revenue)) + 
    stat_smooth() + 
    scale_y_continuous(formatter = comma) + 
    scale_colour_continuous(formatter = comma) 
+0

那很好。谢谢马特。 – analyticsPierce 2010-10-22 04:41:08

33

只是为了保持电流,ggplot2_0.9.3工作语法是:

require(scales) 
ggplot(timeSeries, aes(x=Date, y=Unique.Visitors, colour=Revenue)) + 
    geom_point() + 
    stat_smooth() + 
    scale_y_continuous(labels=comma) + 
    scale_colour_continuous(labels=comma) 

另见this exchange

+0

如果你在''aes()''里面设置了size(而不是''colour''),那么使用''scale_size_continuous(labels = comma)'',我猜也是这样。 – PatrickT 2015-11-14 19:07:38