Ich habe eine Datenmenge namens "fusioniert", die 3 numerische Spalten "pauseMedian" und "numTotalPause" und "diff" enthält. Ich habe auch einen splineHull-Datensatz, der auch numerische Spalten "pauseMedian" und "numTotalPause" plus einen 6-Level-Faktor "microstyle" enthältggplot2 Fehler: Diskreter Wert an kontinuierliche Skala
Ich habe den folgenden Code, der perfekt funktioniert. Er zeichnet einen Streuplot und überlagert ihn dann mit SplineHull-Polygonen, die nach "Microstyle" gefärbt sind.
Skript 1:
ggplot(data=merged,aes(x = pauseMedian, y = numTotalPauses))
+ geom_point()
+ geom_polygon(data = splineHull,
mapping=aes(x=pauseMedian,
y=numTotalPauses,
group=microstyle,
color = microstyle),
alpha=0)
Dann möchte ich auch durch das Hinzufügen nur ein Attribut color = diff die Farbe der Punkte im Streudiagramm ändern.
Skript 2:
ggplot(data=merged,aes(x = pauseMedian, y = numTotalPauses, color = diff))
+ geom_point()
+ geom_polygon(data = splineHull,
mapping=aes(x=pauseMedian,
y=numTotalPauses,
group=microstyle,
color = microstyle),
alpha=0)
Ich sehe die folgenden Fehler:
Error: Discrete value supplied to continuous scale
Ich weiß nicht, warum ich diesen Fehler zu sehen. Wenn ich immer noch ein farbiges Streudiagramm haben möchte, aber keine Polygone, führe ich den folgenden Code aus, es funktioniert wieder.
Skript 3:
ggplot(data=merged,aes(x = pauseMedian, y = numTotalPauses, color = diff))
+ geom_point()
Also, was mit Skript passiert 2, wo ist der Fehler aus, und wie kann ich es funktioniert?
Das scheint seltsam - es ist schwer, den Fehler zu lokalisieren, ohne Beispieldaten zu sehen. Haben Sie auch versucht, 'color = diff 'in' geom_point (aes (color = diff)) zu verschieben ''? –
@ SeñorO Hallo, ja das habe ich probiert. Es gab denselben Fehler. In Skript 2 gibt es zwei Farbattribute, eines im ggplot aes, das andere im geom_polygon aes. Ersterer erhält einen numerischen Wert "diff", letzterer einen Faktorwert "microstyle". Ich schätze, vielleicht kann ggplot nicht gleichzeitig mit einer numerischen Farbe und einer Faktorfarbe umgehen? – nan
Eigentlich mag das jetzt richtig sein, dass ich darüber nachdenke - weil es eine Legende für die Farbe machen muss. Verwenden Sie 'fill = microstyle' für das Polygon –