Ich glaube, mein Datenrahmen ist in Ordnung und mein Code ist in Ordnung. Tatsächlich habe ich Teile des Datenrahmens und den größten Teil des Grafikcodes entfernt, um die Dinge so einfach wie möglich zu gestalten. Trotzdem bekomme ich:
Error in .Call.graphics(C_palette2, .Call(C_palette2, NULL)) :
invalid graphics state
Was ist hier falsch? Hier sind die Daten:
date trt var val
1/8/2008 cc sw5 0.2684138
1/8/2008 cc sw15 0.2897586
1/8/2008 cc sw5 0.2822414
2/8/2008 cc sw5 0.2494583
2/8/2008 cc sw5 0.2692917
2/8/2008 cc sw15 0.2619167
2/8/2008 cc sw5 0.204375
3/8/2008 cc sw5 0.2430625
3/8/2008 cc sw5 0.2654375
3/8/2008 cc sw5 0.2509583
3/8/2008 cc sw5 0.2055625
1/8/2008 ccw sw15 0.2212414
1/8/2008 ccw sw5 0.3613448
1/8/2008 ccw sw5 0.2607586
2/8/2008 ccw sw5 0.2087917
2/8/2008 ccw sw15 0.3390417
2/8/2008 ccw sw5 0.2436458
2/8/2008 ccw sw5 0.290875
3/8/2008 ccw sw5 0.20175
3/8/2008 ccw sw15 0.328875
3/8/2008 ccw sw5 0.2328958
3/8/2008 ccw sw5 0.2868958
Wenn ich mit diesen Daten arbeite, gebe ich Daten wie folgt an:
df<-df[order(as.Date(df$date,format="%d/%m/%Y")),,drop=FALSE]
und hier möchte ich ein Streudiagramm machen:
ggplot(data = df,aes(x = date,y = val)) +
geom_point(aes(group = trt))
ggplot2
ursprünglich installiert?Antworten:
Ich bin auf denselben Fehler gestoßen und habe ihn durch Ausführen von:
und dann die Handlung erneut ausführen. Ich denke, das Grafikgerät wurde früher durch den Export einiger Grafiken durcheinander gebracht und es wurde nicht zurückgesetzt. Dies hat bei mir funktioniert und ist einfacher als die Neuinstallation von ggplot2.
quelle
par(mfrow = c(..., ...))
vorher verwendet habe. Sie kennen keine anderen Grafikparameter, können diese jedoch verursachen.Die Lösung besteht darin, einfach neu zu installieren
ggplot2
. Möglicherweise besteht eine Inkompatibilität zwischen der von Ihnen verwendeten R-Version und Ihrer installierten Version vonggplot2
. Alternativ ist möglicherweise bei derggplot2
früheren Installation ein Fehler aufgetreten, der das angezeigte Problem verursacht hat.quelle
dev.off()
hat sie bei mir nicht funktioniert und es ist eine gute zweite Option, um zu versuchen, ggplot2 neu zu installieren.dev.off()
zuerst zu versuchen , es dauert weniger als die Neuinstallation des Pakets. Dies kann ein zweiter Schritt sein, wenn erdev.off()
nicht funktioniert hat.Ich habe festgestellt, dass dies auftritt, wenn Sie ggplot-Diagramme mit Plot-Diagrammen in derselben Sitzung mischen. Die Verwendung der von Paul vorgeschlagenen 'dev.off'-Lösung löst das Problem.
quelle
dev.off'
macht?Sie müssen ggplot2 wahrscheinlich nicht neu installieren
Lösung: Gehen Sie zurück zum Plot, der zuvor nicht funktioniert hat. Nehmen Sie zum Beispiel die folgende Konsolenausgabe. Die Bildränder (das Fenster, in dem Ihre Diagramme angezeigt werden) waren zu klein, um das Paardiagramm (MinusInner) anzuzeigen. Als ich dann versuchte, den nächsten qplot zu erstellen, wurde R immer noch wegen des vorherigen Fehlers aufgelegt.
Ich habe den ersten Fehler behoben, indem ich das Plotfenster erweitert und das Paardiagramm (MinusInner) erneut ausgeführt habe. Dann schuld, es hat funktioniert.
quelle
Ich habe dieses Problem gelöst, indem ich alle Diagramme in der Konsole gelöscht und dann sichergestellt habe, dass der Diagrammbereich groß genug ist, um das aufzunehmen, was ich erstellt habe.
quelle
Versuchen Sie, Grafik mit
x11()
oder herauszuholenwin.graph()
und dieses Problem zu lösen.quelle