2015-10-05 22 views
7

Tôi muốn tạo các ô bar bằng ggplot. Sau khi vẽ sơ đồ khi tôi thực hiện export>copy to clipboard và sau đó thử điều chỉnh kích thước ô của tôi, khoảng trống giữa các thanh thay đổi khi tôi thay đổi kích cỡ ô (khoảng cách giữa các thanh thay đổi vị trí của nó).chiều rộng và khoảng cách của geom_bar (ggplot2)

Tôi hy vọng tôi hiểu rõ điều này. Tôi đã sử dụng đoạn mã sau:

ggplot(df, aes(Day, Mean)) + 
geom_histogram(stat = "identity", position = "stack") + 
theme(axis.text = element_text(size=12, colour = 'black')) + 
ylim(0, 50) + xlim(0, 365) 

Tôi đã cố gắng sử dụng cả hai geom_bargeom_histogram, cả hai dường như để cung cấp cho những âm mưu tương tự. Và khoảng cách giữa các thanh thay đổi khi tôi điều chỉnh kích thước.

P.S. Tôi phải lập biểu đồ 365 bars, mỗi người đại diện cho một ngày trong một năm. Vui lòng chỉnh sửa câu hỏi, nếu bạn nghĩ rằng tôi không rõ ràng.

plot i created with the code provided here

Đây là cốt truyện được tạo bằng mã. Bạn có thể thấy rõ những khoảng trống không đồng đều ở giữa.

đây là dữ liệu: data

Sửa

dữ liệu

df <- data.frame(Mean=c(0,0,0,0,0,0,0.027272727,0,0.409090909,0.009090909,0,0,0,0,0,0.054545455,0.036363636,0.118181818,0.327272727,0.254545455,0,0,1.609090909,1.636363636,0,0.181818182,1.2,0.090909091,0.409090909,0.418181818,1.018181818,0.409090909,0.127272727,0.072727273,0.054545455,1.2,0.127272727,0.290909091,0,0.518181818,0.254545455,0.454545455,1.545454545,1.1,1.763636364,0,0.136363636,0.7,0.445454545,1.954545455,0.018181818,0,2.618181818,0,0,3.518181818,7.645454545,2.709090909,5.909090909,0.9,1.109090909,2.354545455,0.418181818,0.272727273,0,0,1.636363636,0,2.927272727,0.472727273,1,0,2.109090909,0.490909091,0.827272727,2.663636364,4.8,0.554545455,6.3,3.936363636,2.218181818,0.045454545,0,7.109090909,0,3.745454545,3.009090909,8.818181818,6,21.99090909,2.845454545,3.918181818,1.4,12.32727273,1.136363636,4.345454545,1.018181818,2.927272727,12.53636364,2.618181818,0.709090909,5.645454545,5.345454545,3.181818182,2.681818182,13.96363636,3.990909091,9.9,12.54545455,8.545454545,11.43636364,6.281818182,1.836363636,11.4,4.827272727,16.14545455,3.581818182,1.972727273,3.4,4.472727273,18.86363636,5,11.4,5.790909091,3.745454545,1.072727273,2.581818182,5.063636364,12.42727273,9.2,10.85454545,15.18181818,5.963636364,22.53636364,5.027272727,7,4.572727273,7.190909091,15.42727273,7.3,23.48181818,30.87272727,19.62727273,6.463636364,16.20909091,9.509090909,5.1,8.127272727,5.890909091,11.84545455,10.14545455,4.518181818,15.23636364,22.41818182,21.62727273,7.245454545,19.56363636,33.94545455,26.98181818,9.027272727,11.28181818,20.44545455,27.52727273,23.25454545,28.77272727,20.04545455,30.68181818,28.32727273,12.38181818,13.54545455,18.17272727,12.97272727,38.14545455,20.2,14.30909091,39.44545455,34.4,34.49090909,23.32727273,29.37272727,50.68181818,23.2,16.28,35.02,49,18.86,30.96,37.83,33.01,44.31,25.51,33.76,15.05,24.8,8.99,15.72,41.31,41.47,28.12,44.22,30.63,37.35,15.72,12.86,21.89,18.02,6.32,4.73,24.16,29.12,11.58,24.25,22.69,15.7,24.36,20.05,17.19,26.71,17.84,16.53,9.3,5.11,10.97,19.95,5.65,29.88,34.95,24.14,32.09,9.85,17.49,13.72,7.97,26.21,24.9,26.45,14.1,9.52,18.64,13.43,15.17,26.61,9.84,24.9,16.42,19.58,17.58,22.96,39.61,22.83,15.49,23.64,16.71,3.96,10.17,19.04,28.42,16.64,4.95,9.73,13.45,11.67,8.02,8.71,8.31,17.65,8.41,7.19,11.94,5.15,5.54,5.21,0.88,0.96,6.18,9.46,10.24,17.29,8.95,16.51,6.31,11.4,5.05,8.28,0.26,0,6.19,1.02,0.99,0.94,1.87,0,0.21,3.32,3.33,7.82,2.65,5.21,0.49,1.59,0.05,2.25,0,0,1.09,0.42,0,0.05,0.02,0,0.18,0,0.02,0.05,0.09,0.01,1.01,0,0,2.38,0.42,0.65,0,0,0,0.4,0,0,0,0,0.18,0,0,0,0,0,0.63,0,0,0,0.1,0,0,0,0,0,1.35,0,0,0,0,0,1.62,0.2,0,0,0,1.3,0,0,0,0,0.89,4.55,0), Day=seq(1, 365, 1)) 
+0

đính kèm một chút dữ liệu. Nó không có nghĩa là bạn không có quan sát vào một số ngày? – Mateusz1981

+0

có một số dữ liệu bị thiếu trong vài ngày, nhưng vị trí của khoảng trống thay đổi khi tôi cố điều chỉnh kích thước của ô. –

+0

@ Mateusz1981 Tôi đã thêm dữ liệu. –

Trả lời

14

Thiết lập width đến một giá trị nhỏ và xác định color mang lại cho tôi những kết quả mong muốn với những khoảng trống giữa tất cả các thanh:

ggplot(df, aes(x = Day, y = Mean)) + 
    geom_bar(stat = "identity", width = 0.1, color = "black") + 
    theme_bw() + 
    theme(axis.text = element_text(size = 12)) 

cốt truyện kết quả:

enter image description here


Nếu bạn muốn không có khoảng trống, sử dụng width = 1:

ggplot(df, aes(x = Day, y = Mean)) + 
    geom_bar(stat = "identity", width = 1) + 
    theme_bw(base_size = 12) 

cốt truyện kết quả:

enter image description here

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