Legende hinzufügen

Wie erstelle ich Grafiken, was ist zu beachten?

Moderatoren: EDi, jogo

Antworten
MarinaGrey02
Beiträge: 14
Registriert: Fr Okt 04, 2019 9:44 am

Legende hinzufügen

Beitrag von MarinaGrey02 »

Nochmal hallo von mir,

leider komme ich nach mehreren Stunden suchen im Netz nicht weiter. Ich möchte gerne eine Grafik erstellen die die Preise von Kohle, Erdgas und Strom abbildet. (Kohle=coal, Erdags=gas, Strom=ebase). Mein Dataframe heißt "daten" (ja sehr einfallsreich ich weiß :-D)

Ich bin schon dahinter gekommen wie ich meine Grafik erstelle und auch die verschiedenen Farben anzeigen lasse. Mein Code sieht bis jetzt wie folgt aus:

Code: Alles auswählen

ggplot(daten, aes(x = daten$datum)) + 
  geom_line(aes(y=daten$gas), colour = "blue", show.legend = TRUE) + 
  geom_line(aes(y=daten$coal), colour = "grey", show.legend = TRUE) + 
  geom_line(aes(y=daten$ebase), colour = "black", show.legend = TRUE) + 
  labs(x = "", y = "Euro in Mwh") + theme(axis.title.y = element_text(size=10)) +
  scale_x_date(date_breaks = "1 year", date_labels = "%Y")
Auf der X-Achse sind jeweils die Jahresdaten von 2013 bis 2018 abgebildet. Auch die Schriftgröße der Achsen habe ich angepasst. Jetzt möchte ich aber noch eine Legende hinzufügen, die mir die ausgewiesenen Farben abbildet. Diese Legende braucht keine Überschrift und sollte für Blau = Erdgas, Grau = Kohle und Schwarz = Strom ausgeben. Ich habe es schon mehrmals mit der Funktion scale_colour_manual versucht, jedoch nichts rausbekommen. Die meisten Beispiele im Internet bilden einfach eine ganze Spalte ab und färben die einzelnen Einträge farblich, da bin ich dann auch nicht weitergekommen...

Vielleicht weiß von Euch ja einer wie ich das gelöst bekomme?

ruedi_br
Beiträge: 101
Registriert: Do Mär 01, 2018 3:53 pm

Re: Legende hinzufügen

Beitrag von ruedi_br »

Vielleicht würde sich ein Blick in diese Publikation lohnen, da wird auch auf gruppenabhängiges (hier: die Energieträger Kohle, Gas, Strom) Einfärben eingegangen.
Grüße
Ruedi
fortune(111)

bigben
Beiträge: 1448
Registriert: Mi Okt 12, 2016 9:09 am

Re: Legende hinzufügen

Beitrag von bigben »

@MarinaGrey:
viewtopic.php?f=20&t=11

@ruedi
ruedi_br hat geschrieben:
Di Nov 05, 2019 3:11 pm
Vielleicht würde sich ein Blick in diese Publikation lohnen, da wird auch auf gruppenabhängiges (hier: die Energieträger Kohle, Gas, Strom) Einfärben eingegangen.
Grüße
Ruedi
In welche?

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte

MarinaGrey02
Beiträge: 14
Registriert: Fr Okt 04, 2019 9:44 am

Re: Legende hinzufügen

Beitrag von MarinaGrey02 »

Code: Alles auswählen

data.frame':	1565 obs. of  11 variables:
 $ datum   : Factor w/ 1565 levels "01.01.2013","01.01.2014",..: 1 52 103 154 310 361 412 463 514 670 ...
 $ ice_eua : num  6.45 6.38 6.21 6.15 6.47 6.28 6.03 5.87 5.73 5.72 ...
 $ eex_eua : num  6.72 6.59 6.39 6.36 6.65 6.48 6.22 6.04 5.92 5.9 ...
 $ gas     : num  27 27.1 27.8 28 28.6 ...
 $ coal    : num  8.37 8.31 8.31 8.35 8.23 ...
 $ stoxx   : num  280 285 287 288 287 ...
 $ cds     : num  18.8 19 19 18.9 19 ...
 $ css     : num  -6.05 -6.34 -7.72 -8.06 -9.24 ...
 $ ebase   : num  45.3 45.3 45.1 45 45.1 ...
 $ epeak   : num  56.9 57 56.8 56.7 56.9 ...
 $ tempdiff: num  4.19 1.69 3.19 7.09 6.19 3.59 2.29 1.59 -1.11 -4.61 .
ist es so besser nachzuvollziehen?
Dateianhänge
daten.xlsx
Das ist mein Datensatz, den ich verwende
(180.41 KiB) 8-mal heruntergeladen

Athomas
Beiträge: 390
Registriert: Mo Feb 26, 2018 8:19 pm

Re: Legende hinzufügen

Beitrag von Athomas »

Datum als "Factor" sieht aber nicht so gut aus.

Ansonsten bitte, bitte, etwas liefern was man laufen lassen und dann angucken kann!
Besser is das!

MarinaGrey02
Beiträge: 14
Registriert: Fr Okt 04, 2019 9:44 am

Re: Legende hinzufügen

Beitrag von MarinaGrey02 »

Ich habe es gerade tatsächlich hinbekommen!!

Code: Alles auswählen

ggplot(daten, aes(x = daten$datum)) + 
  geom_line(aes(y=daten$gas, color = "blue")) + 
  geom_line(aes(y=daten$coal, color = "grey")) + 
  geom_line(aes(y=daten$ebase, color = "black")) + 
  scale_color_manual(name = "", labels = c("Erdgas", "Kohle", "Strom"), values=c("blue", "grey", "black" )) +
  theme(axis.title.y = element_text(size=10), legend.position = "bottom") +
  scale_x_date(name = "",date_breaks = "1 year", date_labels = "%Y") + 
  scale_y_continuous(name = "Euro in Mwh", breaks = seq(0, 100, 10), limits=c(0,60))

Der Code sieht zwar sehr umständlich aus, aber es klappt!

Athomas
Beiträge: 390
Registriert: Mo Feb 26, 2018 8:19 pm

Re: Legende hinzufügen

Beitrag von Athomas »

Wenn Du das "datum" tatsächlich als Faktor verwurstelt hast, ist die Grafik mit ziemlicher Sicherheit falsch...
Ich werde mich zu diesen Fragen aber erst wieder äußern, wenn Du etwas Nachvollziehbares lieferst!

ruedi_br
Beiträge: 101
Registriert: Do Mär 01, 2018 3:53 pm

Re: Legende hinzufügen

Beitrag von ruedi_br »

fortune(111)

Antworten