Tôi có khung dữ liệu sau:màu sắc liên tục ggplot2 cho quy mô rời rạc và xóa một huyền thoại
df
zone X Y Value
1 604000 2673000 522
1 612000 2643000 524
. . . .
. . . .
615 604000 2673000 698
Trong thực tế, tôi có 615 khu, X và Y là các Lambert phối và giá trị gia tăng là mưa. khu My đại diện cho Pháp và tôi đang cố gắng để âm mưu chúng:
mi <- 300
ma <- 1900
df$val <- cut(df$Sim, breaks=seq(mi,ma,100),
labels = paste("(", format(seq(mi,ma,100)[1:(length(seq(mi,ma,100))-1)]),
", ", format(seq(mi,ma,100)[-1]), "]", sep = ""))
breaks <- unique(bincol(df$Sim,"green","yellow","red"))
breaks <- breaks[order(unique(df$val))]
p <- ggplot(data =df, aes(x=X, y=Y))
p <- (p
+ theme_bw()
+ coord_equal()
+ geom_tile(aes(fill=val))
+ scale_colour_manual("mm", values = breaks)
+ geom_path(data = polfrance, colour = 'black',
aes(x = long, y = lat, group = group))
+ geom_path(data = sympzones, colour = 'grey40',
aes(x = long, y = lat, group = group))
)
p <- (p + scale_y_continuous(limits=c(1580000,2730000),
breaks=seq(1600000,2700000, 200000),
labels= seq(1600,2700,200), expand=c(0,0))
+ scale_x_continuous(limits=c(0,1250000),
breaks= seq(0,1250000, 400000),
labels= seq(0,1250, 400), expand=c(0,0))
+ xlab("X Lambert [km]")
+ ylab("Y Lambert [km]")
)
tôi sử dụng sympzones và polfrance để vẽ đường viền của khu tôi.
VÀ
bincol <- function(x,low,medium,high) {
breaks <- function(x) pretty(range(x), n = nclass.Sturges(x), min.n = 1)
colfunc <- colorRampPalette(c(low, medium, high))
binned <- cut(x,breaks(x))
res <- colfunc(length(unique(binned)))[as.integer(binned)]
names(res) <- as.character(binned)
res
}
Giá trị là 300-1900 và đây là những gì tôi có được:
Tôi có một vấn đề:
tôi không thể thay đổi truyền thuyết , đây là truyền thuyết từ geom_file và nó không tính đến scale_colour_manual. Vì vậy, đây không phải là một thứ tự tăng dần, không phải là tiêu đề tốt (tôi muốn "mm") và không phải là màu sắc tốt.
Tôi không biết nếu nó thực sự rõ ràng ... Ai đó có thể giúp tôi?
Edit: Tôi lấy cảm hứng từ đó: easiest way to discretize continuous scales for ggplot2 color scales?
Tôi nghĩ rằng bạn có thể màu sắc khó hiểu và điền vào. Bằng cách chỉ định 'color = ...' trong 'geom_tile (...)', bạn chỉ định màu viền *, không phải là thứ bạn muốn. Đó là lý do tại sao bạn "có rất nhiều ô vuông nhỏ". Sắp xếp lại huyền thoại phức tạp hơn một chút. Nếu bạn tải lên tập dữ liệu của mình (bao gồm cả bản đồ) và cung cấp liên kết, tôi có thể hiển thị cho bạn. – jlhoward
đặt 'giảm = FALSE' trong' ngắt <- ngắt [thứ tự (nhãn, giảm = TRUE)] 'và ' nhãn <- nhãn [thứ tự (nhãn, giảm = TRUE)] 'nên đặt thứ tự các nhãn chú giải thành tăng dần – OdeToMyFiddle
TRUE, tôi đã thay đổi nó và vấn đề mới của tôi là tôi không thể thay đổi chú thích (tên, màu sắc, thứ tự). jlhoward, bạn có ý gì khi cung cấp liên kết? – Chika