Ich möchte ggplot2's stat_binhex() verwenden, um zwei unabhängige Variablen auf dem gleichen Diagramm darzustellen, jede mit einem eigenen Farbverlauf mit scale_colour_gradientn().ggplot2 mehrere Stat_binhex() Plots mit unterschiedlichen Farbverläufen in einem Bild
Wenn wir die Tatsache unberücksichtigt lassen, dass die X-Achsen-Einheiten nicht übereinstimmen, wäre ein reproduzierbares Beispiel, die folgenden in demselben Bild zu zeichnen, während separate Füllgradienten beibehalten werden.
d <- ggplot(diamonds, aes(x=carat,y=price))+
stat_binhex(colour="white",na.rm=TRUE)+
scale_fill_gradientn(colours=c("white","blue"),name = "Frequency",na.value=NA)
try(ggsave(plot=d,filename=<some file>,height=6,width=8))
d <- ggplot(diamonds, aes(x=depth,y=price))+
stat_binhex(colour="white",na.rm=TRUE)+
scale_fill_gradientn(colours=c("yellow","black"),name = "Frequency",na.value=NA)
try(ggsave(plot=d,filename=<some other file>,height=6,width=8))
fand ich einige Gespräche von einem ähnlichen Problem in ggplot2 Google Groups here.
Dies ist die richtige Richtung. Irgendeine Idee darüber, wie man jedem stat_binhex() einen scale_fill_gradientn() zuweist? Denken Sie auch an # 2 - Ihre beabsichtigte Anwendung verwendet die gleiche Einheit für beide x Variablen – metasequoia
Sie können nur eine 'fill'-Skala in jedem' ggplot' Aufruf haben. Ich kann mir eine Art Hack vorstellen, bei dem Sie 'scale_fill_manual' mit manuell festgelegten Farben für jede Kombination von Wertebereich * Variable definieren. Dann würde jeder Aufruf von 'stat_binhex'' fill' auf einen variablenspezifischen Faktor abbilden ... aber jetzt plappere ich nur ... – bdemarest