Wie man Farbpunkte in einer anderen Farbe, wenn ein Datenattribut nicht null ist
-
24-09-2019 - |
Frage
ich ein Streudiagramm in R haben (mit ggplot2). Die Daten haben eine numerische Spalte (nennen wir es bin
), die verschiedene ganzzahlige Werte oder null enthalten kann.
Ich möchte die Punkte mit Nicht-Null-Bin-Werte von den anderen unterschiedlich einzufärben. Ich möchte nicht auf eine Farbe pro Wert von bin, die zu laut sein würde. Einfach nur, sagt sie, für die mit einer Nicht-Null ist rot und schwarz für die andere.
qplot hat ein colour
Attribut, aber ich weiß nicht, wie eine Bedingung wie colour = bin != null ? "red" : "black"
auszudrücken
Lösung
Sie können die Farbe definieren zuerst:
color <- rep("black", length(bin))
color[is.null(color)] <- "red"
Ansonsten können Sie eine ifelse Anweisung verwenden:
colour=ifelse(is.null(bin), "red", "black")
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow