ho i seguenti dati:mappa di calore multiforme ggplot per porzione selezionata di X con ulteriori etichette di testo su di esso
Id = paste ("ID-", 1:5, sep = "")
position <- rep(seq (1, 100,10), each = 5)
group = rep (rep(rep (1:5, each = length (Id)), each = length(position)))
yvar <- rnorm (length(position), 0.5, 0.1)
ycat <- c(sample (c("A", "B"), length(yvar), replace = TRUE))
namevar <- rep(Id, length(group)/length(Id))
mydf <- data.frame (namevar, group, position, yvar, ycat)
group
è una variabile sfaccettatura, position
è una variabile x continuo. yvar
viene utilizzato per riempire il colore delle tessere. ycat
è un'etichetta di testo per ogni riquadro. Voglio creare una trama con spazio vuoto per tutti i valori, ad eccezione di alcune tessere che seleziono per tracciare con un colore di riempimento e le etichette.
Ecco quello che ho finora:
ggplot(mydf,aes(y=Id,x=position)) +
facet_wrap(~group) +
geom_tile(aes(fill = yvar),colour = "black") +
geom_text(aes(label = ycat)) +
labs(x = NULL,y = NULL)
mi piacerebbe la trama a guardare come questo, tranne avere spazio vuoto ovunque tranne che, per esempio, il gruppo 1 tra 30-50 e il gruppo 5 tra 20-60, un po 'come questo:
È la tua domanda su come rimuovere le etichette dell'asse xey sull'ultimo grafico? vale a dire come rimuovere 0, 20, 40, ecc sull'asse x e come rimuovere ID-1, ID-2 sull'asse y? – joran
La mia domanda ora è solo per ombreggiare le regioni selezionate, per esempio le posizioni nel gruppo 1 - il valore x da 30 a 50 e il gruppo 5 - il valore x da 20 a 60, il resto sarebbe mentre e ancora presente. – SHRram
Quindi vuoi tracciare tutti i valori, vuoi semplicemente cambiare quali tessere sono ombreggiate? – joran