Làm thế nào để vẽ một chức năng bước cầu thang với ggplot?


15

Tôi có biểu đồ như thế này: nhập mô tả hình ảnh ở đây

Mã R để tạo ra nó là:

DF <- data.frame(date = as.Date(runif(100, 0, 800),origin="2005-01-01"), 
                 outcome = rbinom(100, 1, 0.1))
DF <- DF[order(DF$DateVariable),] #Sort by date
DF$x <- seq(length=nrow(DF)) #Add case numbers (in order, since sorted)
DF$y <- cumsum(DF$outcome)
library(ggplot2)
ggplot(DF, aes(x,y)) + geom_path() + #Ploting
scale_y_continuous(name= "Number of failures") +
scale_x_continuous(name= "Operations performed")

Tôi muốn một cái gì đó như thế này: nhập mô tả hình ảnh ở đây

Sự khác biệt là ở dạng các bước trong trường hợp thất bại (tôi cần hình chữ nhật).

Câu hỏi của tôi là:

  • Làm thế nào để đạt được điều này với ggplot2?
  • Có lựa chọn nào tốt hơn để hình dung tỷ lệ thất bại theo thời gian / lần lặp được thực hiện không?
  • Biến thể nào dễ hiểu hơn: cái này hay cái kia hoặc, có thể là cái gì đó khác nhau?

2
Bạn đã xem trợ giúp trực tuyến, had.co.nz/ggplot2/geom_step.html ?
chl

Vâng, đây là nó. Bỏ lỡ điều này trong tài liệu.
Yuriy Petrovskiy

2
@Yuriy, xin vui lòng trả lời câu hỏi của bạn. Nó sẽ giúp người dùng trong tương lai với các vấn đề tương tự.
mpiktas

@mpiktas, đã thêm một câu trả lời cho câu hỏi chính. Bất kỳ ý kiến ​​về các câu hỏi khác?
Yuriy Petrovskiy

Câu trả lời:


17

Như đã lưu ý bởi @chl, câu trả lời chỉ đơn giản là sử dụng geom_step () thay vì geom_path () trong ví dụ trên.

Kết quả (cốt truyện có dữ liệu khác nhau):

nhập mô tả hình ảnh ở đây

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.