2010-10-22 85 views
16

tôi đang làm việc trên kết thúc lên một đồ thị được tạo ra sử dụng ggplot2 như vậy ...Cách định dạng giá trị số cho chú giải ggplot2?

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

Tôi có kèm theo kết quả và bạn sẽ nhìn thấy giá trị số trong truyền thuyết cho Doanh thu không có một dấu phẩy. Làm cách nào để thêm dấu phẩy vào các giá trị đó? Tôi đã có thể sử dụng scale_y_continuous cho trục, có thể được sử dụng cho chú giải không?

alt text

Trả lời

10

Note 2014/07/16: cú pháp trong câu trả lời này đã lỗi thời trong một thời gian. Sử dụng metasequoia's answer!


Yep - chỉ là vấn đề nhận được lớp scale_colour_ ngay tìm ra. Hãy thử:

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

Cá nhân tôi cũng sẽ di chuyển bản đồ màu của tôi vào lớp geom_point, do đó nó không cung cấp cho bạn rằng dòng lẻ đằng sau dấu chấm trong truyền thuyết:

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

Đó là tốt. cảm ơn Matt. – analyticsPierce

33

Chỉ cần để giữ hiện tại, trong ggplot2_0.9.3 cú pháp làm việc là:

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) 

xem thêm this exchange

+0

Sử dụng '' scale_size_continuous (nhãn = dấu phẩy) '' nếu bạn đã đặt '' size'' (thay vì '' colour'') bên trong '' aes() '', và tương tự như vậy với hình dạng và điền tôi đoán. – PatrickT

Các vấn đề liên quan