Seite 1 von 2

zwei graphen zeichnen mit demselben datenset

Verfasst: Sa Apr 24, 2021 9:22 pm
von heyoka
ich soll zwei graphen zeichnen für das dataframe mtcars, das nebeneinander liegt, jedoch soll der Graph 1 und 2 nach Automatik und manuell Betrieb aufgeteilt sein, d.h Im Graph 1 sind nur alle Autos die automatik Betrieb haben und graph 2 halt manuell

mein ansatz :
par(mfrow = c(1,2))
plot(df.cars$mpg,df.cars$hp)
plot(df.cars$mpg,df.cars$hp)

leider weiß ich nicht wie ich das jetzt filtern soll ???

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: Sa Apr 24, 2021 9:50 pm
von bigben
beispielsweise

Code: Alles auswählen

ausw <- which(mtcars$am == 0)
automatic <- mtcars[ausw,]
manual <- mtcars[-ausw,]
oder vielleicht lieber

Code: Alles auswählen

automatic <- mtcars[mtcars$am == 0,]
manual <- mtcars[mtcars$am == 1,]
wahlweise auch

Code: Alles auswählen

automatic <- subset(mtcars, am == 0)
manual <- subset(mtcars, am == 1)
oder, etwas abstrakter, dafür ohne Wiederholungen:

Code: Alles auswählen

by(mtcars, mtcars$am, function(x) plot(x$mpg, x$hp))
LG,
Bernhard

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: Sa Apr 24, 2021 10:01 pm
von heyoka
wie würde das denn in meinem fal aussehen wenn ich das zeichnen würde

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: Sa Apr 24, 2021 10:05 pm
von bigben
Ich verstehe die Frage nicht.

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: Sa Apr 24, 2021 10:15 pm
von heyoka
die letzte methode klappt aber was macht die genau

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: Sa Apr 24, 2021 10:56 pm
von bigben
Die Funktion by ruft die Funktion plot auf, sodass die einmal mpg gegen hp plottet für die Autos mit Automatik und einmal für die mit Handschaltung.

Das manual beschreibt ganz treffend:
Function by is an object-oriented wrapper for tapply applied to data frames.

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: Sa Apr 24, 2021 11:18 pm
von heyoka
okay ich habe es nun solle ich die datenpunkte bemalen nach gewicht,

plot(automatic$mpg,automatic$hp)
plot(manuell$mpg,manuell$hp)

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: Sa Apr 24, 2021 11:43 pm
von heyoka
weißt du vllt wie ich das mit ggplot mache also dasss ih mehrere graphen nebeneinander habe mit ggplot ?

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: So Apr 25, 2021 1:55 am
von heyoka
ich habe alle aufgaben geschafft selbstständig, irgendwie macht das spaß haha aber eins fehlt mir
also

Lassen Sie die Farben von gelb nach rot verlaufen; der Verlauf soll logarithmisch
skaliert sein, d.h. jede Verdopplung des Gewichts soll der gleichen Schrittgröße im
Farbverlauf entsprechen.

ansatz
p11 <- ggplot(automatic,aes(x=mpg,y=hp)) + geom_point(aes(fill=wt))
p22 <- ggplot(manuell,aes(x=mpg,y=hp)) + geom_point(aes(fill=wt))
grid.arrange(p11, p22, ncol=2)

Re: zwei graphen zeichnen mit demselben datenset

Verfasst: So Apr 25, 2021 8:43 am
von EDi
Lassen Sie die Farben von gelb nach rot verlaufen; der Verlauf soll logarithmisch

Code: Alles auswählen

scale_fill_gradient(trans="log")