Animierte Grafiken wie Gapminder

Wie erstelle ich Grafiken, was ist zu beachten?

Moderatoren: EDi, jogo

Antworten
Werekorden
Beiträge: 83
Registriert: So Feb 04, 2018 7:52 pm

Animierte Grafiken wie Gapminder

Beitrag von Werekorden »

Hi,
Ich habe mir mal mit den ggplot, gganimate und tweenr Pakten und den dazugehörigen Beispielen Animationen gebastelt. Ich kann die auch exportieren als gif oder mp4. Jetzt möchte ich solche Animationen in Videos integrieren, also mit Adobe After Effects und Premiere zu einem Lehrvideo schneiden.

Frage:
Gibt es Möglichkeiten die Auflösungen der in R erstellten Animationen zu verbessern, denn derzeit sind die nichts für Videos nur für Homepages.

Ich stelle mir das z.b. so vor, dass man die Animation nutzt um wie bei Gapminder Menschen Dinge zu erklären. Leider finde ich das Gapminder-Tool an sich eher bescheiden.

Hat da jemand eine Idee.

Danke euch und auf eine tolle gemeinsame R Zukunft.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Animierte Grafiken wie Gapminder

Beitrag von EDi »

Bitte ein reproduzierbares Beispiel posten. Was sind deine Einstellungen für gganimate (ani.width & ani.height)?
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Werekorden
Beiträge: 83
Registriert: So Feb 04, 2018 7:52 pm

Re: Animierte Grafiken wie Gapminder

Beitrag von Werekorden »

z.B. dies hier:

Code: Alles auswählen

#Neue Methode nach http://blog.revolutionanalytics.com/2017/05/tweenr.html
library(tweenr)
library(gapminder)
library(ggplot2)
library(gganimate)
gapminder_edit <- gapminder %>%
  arrange(country, year) %>%
  select(gdpPercap,lifeExp,year,country, continent, pop) %>%
  rename(x=gdpPercap,y=lifeExp,time=year,id=country) %>%
  mutate(ease="linear")

gapminder_tween <- tween_elements(gapminder_edit,
                                  "time", "id", "ease", nframes = 300) %>%
  mutate(year = round(time), country = .group) %>%
  left_join(gapminder, by=c("country","year","continent")) %>%
  rename(population = pop.x)

p2 <- ggplot(gapminder_tween,
             aes(x=x, y=y, frame = .frame)) +
  geom_point(aes(size=population, color=continent),alpha=0.8) +
  xlab("GDP per capita") +
  ylab("Life expectancy at birth") +
  scale_x_log10(labels=comma)

gganimate(p2, filename="gapminder-tween.gif", title_frame = FALSE, interval = 0.05)
Oh man natürlich wie konnte ich das ani.width vergessen. Gleich mal ausprobieren.

Danke Schonmals
Werekorden
Beiträge: 83
Registriert: So Feb 04, 2018 7:52 pm

Re: Animierte Grafiken wie Gapminder

Beitrag von Werekorden »

nee das bringt nichts. wie ich gerade sehe hier mal ein link zum video
https://www.dropbox.com/s/p0fgaa7vzt9am ... n.mp4?dl=0

zwar wird das Video größer aber ist immer noch extrem unscharf.
Benutzeravatar
student
Beiträge: 674
Registriert: Fr Okt 07, 2016 9:52 am

Re: Animierte Grafiken wie Gapminder

Beitrag von student »

Hallo,

ich kenne das Problem! Ich habe eine simple Lösung für das Problem gefunden, sie mag aber vielleicht nichts für Dich zu sein: Ich lasse die Animation auf dem gesamten Screen laufen und zeichne sie mit einem geeignetem Tool auf. Damit schaffe ich HD.
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube

Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Werekorden
Beiträge: 83
Registriert: So Feb 04, 2018 7:52 pm

Re: Animierte Grafiken wie Gapminder

Beitrag von Werekorden »

HI Student,

Ich glaube nicht, dass das reicht. Das Video habe ich in 1920x1080p gemacht und trotzdem sind die Grafiken unscharf. Wenn ich als Alternative im Viewer anschaue ohne Dauerstellung sieht es auch bei der Auflösung unscharf aus.Ich nehme jetzt noch als letzte Option mal die Retina-Auflösung meines Macs, also 2880x1800.

Na großartig, wenn man den Code jetzt noch für Base_size und max_size etwas anpasst:

Code: Alles auswählen

p2 <- ggplot(gapminder_tween,
             aes(x=x, y=y, frame = .frame)) +
  theme_minimal(base_size = 24, base_family = "Georgia") +
  geom_point(aes(size=population, color=continent),alpha=0.8) +
  xlab("GDP per capita") +
  ylab("Life expectancy at birth") +
  scale_size_area(guide = FALSE, max_size = 30) +
  scale_x_log10(labels=comma)
dann bekommt man auch größere Texte und die Bubbles und alles wird größer und automatisch auch schärfer. Es ist noch nicht optimal aber immerhin ein Anfang.

Ja ja bin halt noch ein Noob.
Werekorden
Beiträge: 83
Registriert: So Feb 04, 2018 7:52 pm

Re: Animierte Grafiken wie Gapminder

Beitrag von Werekorden »

Jetzt gibts noch ein kleines Problem.

ich nutze ja die theme_minimal. Wenn ich in dieser jetzt den Zeilenabstand in der Legende ändern will, müsste ich meine theme selbst komplett selbst erstellen oder? Ich kann der theme_minimal keinen Zeilenabstand anhängen so wie ich es sehe.

Stimmt das? Wäre schade, da ich einige vorgefertigte Themes mag und nur Kleinigkeiten ändern muss, weil ich wie bei mir jetzt das Video in hoher Auflösung brauche und dann der Text in der Legende überlappt.

Anbei mal mein neues Video wo man rechts sieht wie die Ländernamen überlappen: https://www.dropbox.com/s/maoqjkjdzvmmd ... 0.mp4?dl=0
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Animierte Grafiken wie Gapminder

Beitrag von EDi »

kannst du alles mit ?theme weiter anpassen.
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Antworten