Tôi đang cố gắng để thực hiện một heatmap
sử dụng ggplot2
bằng cách sử dụng chức năng geom_tiles
đây là mã của tôi dưới đây:Làm thế nào để bạn đặc biệt đặt ggplot2 x trục thay vì thứ tự chữ cái?
p<-ggplot(data,aes(Treatment,organisms))+geom_tile(aes(fill=S))+
scale_fill_gradient(low = "black",high = "red") +
scale_x_discrete(expand = c(0, 0)) +
scale_y_discrete(expand = c(0, 0)) +
theme(legend.position = "right",
axis.ticks = element_blank(),
axis.text.x = element_text(size = base_size, angle = 90, hjust = 0, colour = "black"),
axis.text.y = element_text(size = base_size, hjust = 1, colour = "black")).
dữ liệu là tập tin data.csv tôi
trục X của tôi là loại điều trị
Y của tôi trục là các loại sinh vật
Tôi không quá quen thuộc với các lệnh và lập trình và tôi tương đối mới ở đây. Tôi chỉ muốn có thể chỉ định thứ tự của các nhãn trên trục x. Trong trường hợp này, tôi đang cố gắng xác định thứ tự "Điều trị". Theo mặc định, nó đặt hàng theo thứ tự bảng chữ cái. Làm cách nào để ghi đè/giữ dữ liệu theo thứ tự giống như trong tệp csv gốc của tôi?
Tôi đã thử lệnh này
scale_x_discrete(limits=c("Y","X","Z"))
trong đó x, y, z là để tình trạng điều trị của tôi. Tuy nhiên nó không hoạt động tốt lắm, và cho tôi những hộp nhiệt bị thiếu.
OMG! Tôi đạt được rồi! Cảm ơn rất nhiều, đây chính xác là những gì tôi cần! :) Bạn đã làm ngày hôm nay của tôi trở nên thú vị. –
Hãy tự hỏi tại sao điều này thậm chí còn cần thiết. Tại sao các trục được sắp xếp lại bởi ggplot ngay từ đầu? Có vẻ nguy hiểm nếu ai đó không biết điều này sẽ xảy ra. –
Tôi chỉ chạy vào vấn đề này bản thân mình làm cho một [heatmap với qplot] (http://martinsbioblogg.wordpress.com/2013/03/21/using-r-correlation-heatmap-with-ggplot2/) và tự động áp dụng tên biến . Nó có nên được báo cáo không? –