Ich habe versucht, eine Reihe interaktiver ggplotly
Diagramme aus der for
Schleife in der R-Markdown-Datei ( .Rmd
) zu zeichnen. Inhalt meiner .Rmd
Datei:
``````
Titel: "Ohne Titel"
Ausgabe: html_document
```{r}
Bibliothek(ggplot2) # für Plots
Bibliothek(plotly) # für interaktive Plots
factor_vars <- c("vs", "am", "gear", "carb")
mtcars[factor_vars] <- data.frame(Map(as.factor, mtcars[factor_vars]))
for (VAR in factor_vars) {
cat(paste("Faktorvariable:", VAR))
# Inhalt von "VAR" ändert sich innerhalb der Schleife
p <- ggplot(mtcars, aes_string(x = "mpg", y = "wt", color = VAR)) + geom_point()
# Print an interactive plot
print(ggplotly(p))
}
```
``````
Ich drücke die Knit HTML
Taste in RStudio
. Leider erscheint keines der interaktiven Diagramme in der Datei .html
.
Frage: Warum werden die Diagramme nicht gezeichnet? Und wie kann ich einen interaktiven Plot in Kombination mit einer for
Schleife in einer Rmd
Datei erstellen?
ps Wenn ich print(p)
anstelle von print(ggplotly(p))
, erscheinen ggplot2
Plots in der resultierenden .html
Datei.
Siehe diesen Kommentar .
Ich werde ein Problem in unserem Dokumentations-Repository eröffnen, um sicherzustellen, dass wir bessere Dokumente dazu haben...
Ist dieses Problem gelöst? Ich scheine das gleiche Problem zu haben.
Die aktuelle Problemumgehung ist (basierend auf dem Beispielcode in der ursprünglichen Ausgabe):
plotlist = list()
for (VAR in factor_vars) {
p <- ggplot(mtcars, aes_string(x = "mpg", y = "wt", color = VAR)) + geom_point()
plotlist[[VAR]] = ggplotly(p)
}
htmltools::tagList(setNames(plotlist, NULL))
Obwohl ich manchmal Speicherzugriffsfehler von pandoc erhalte, wenn ich dies versuche.
Hilfreichster Kommentar
Ist dieses Problem gelöst? Ich scheine das gleiche Problem zu haben.