age <- rnorm(100, 0:100)
freq <- rnorm(100, 0:1)
char1<-stringi::stri_rand_strings(100, length = 1, pattern = "[abc]")
char2<-stringi::stri_rand_strings(100, length = 1, pattern = "[def]")
char3<-stringi::stri_rand_strings(100, length = 1, pattern = "[def]")
char3<-stringi::stri_rand_strings(100, length = 1, pattern = "[ghi]")
dftest <- data.frame(age, freq, char1, char2, char3)
dflist <- list(dftest, dftest, dftest, dftest, dftest)
Dies erstellt einen Beispieldatenrahmen, der das Problem, das ich habe, zeigt.Wie würde man Streudiagramme basierend auf Eigenschaften in mehreren Spalten eines Datenrahmens erstellen?
Ich möchte Scatterplots für Alter vs Freq für jeden der Datenrahmen in dieser Liste erstellen, aber ich möchte eine andere Farbe für die Punkte basierend auf dem Wert in den Spalten "char #". Ich brauche auch eine separate Trendlinie für Werte in jedem dieser separaten Merkmale.
Ich möchte dies auch basierend auf Kombinationen von verschiedenen Eigenschaften aus verschiedenen Char-Spalten tun können. Ein Beispiel dafür ist 3 * 3 = 9 separate Farben für jede der Kombinationen, jede mit einer anderen Trendlinie.
Wie würde dies geschehen?
Ich hoffe, das war reproduzierbar und klar genug. Ich habe nur ein paar Mal gepostet, also gewöhne ich mich immer noch an das Format.
Danke!
In den von Ihnen angegebenen Daten, die Liste der Datenrahmen sind alle identisch, so dass selbst wenn man sich anders gefärbt , Sie würden nur eine Reihe von Punkten sehen. Angenommen, Sie haben echte Daten, die anders aussehen als diese, dann möchten Sie zunächst jedem Datenrahmen eine ID-Spalte hinzufügen, dann alle zusammen "verknüpfen" und dann die Farbe zu "ID" zuordnen. Für Ihr Beispiel wäre Ihre ID 1-5 – Mako212
Werfen Sie einen Blick auf ggplot2. Klingt optimal für dieses Problem. Versuchen Sie Facetten zu verwenden. – Jimbou