代码之家  ›  专栏  ›  技术社区  ›  analyticsPierce

如何格式化ggplot2图例的数值?

  •  20
  • analyticsPierce  · 技术社区  · 14 年前

    我正在完成一个使用ggplot2生成的图,就像这样…。

    ggplot(时间序列,aes(x=date,y=unique.visitors,colour=revenue))。
    +geom_point()+stat_smooth()+scale_y_continuous(格式化程序=逗号)
    < /代码> 
    
    

    我已附上结果,您可以看到收入图例中的数字值没有逗号。如何向这些值添加逗号?我可以用比例连续的轴,那也可以用于传说吗?

    T2喜欢…

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

    我已附上结果,您可以看到收入图例中的数字值没有逗号。如何向这些值添加逗号?我可以用比例连续的轴,那也可以用于传说吗?

    3 回复  |  直到 7 年前
        1
  •  11
  •   Community CDub    8 年前

    注2014-07-16:此答案中的语法已过时一段时间。使用 metasequoia's answer!


    是的-只是要弄清楚正确的比例颜色层。尝试:

    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点图层,这样它就不会在图例中的点后面给你留下奇怪的线条:

    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)
    
        2
  •  39
  •   Community CDub    8 年前

    为了保持最新,在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

        3
  •  5
  •   TomS    7 年前

    …当我偶然发现这个旧线程时,也许添加您需要加载的内容是有意义的。 library("scales") ,否则将收到以下错误消息

    Error in check_breaks_labels(breaks, labels) : object 'comma' not found