r - 在使用 Knitr 的 R 中,如何获得在循环中创建的绘图图表以进行打印?
问题描述
我正在尝试使用 Knitr 创建一个 HTML 文档。我注意到你可以让它毫无问题地打印在循环中创建的常规图。然而,情节图表并不那么简单。例如,我怎样才能让以下工作?
---
title: "Test"
output: html_document
---
```{r charts, echo=FALSE}
library("plotly")
charts<-list()
for(i in 1:length(unique(iris$Species))){
iris2<-iris[iris$Species==unique(iris$Species)[i],]
charts[[i]]<-plot_ly(iris2, x = ~Sepal.Length, y = ~Sepal.Width, type = 'bar')
}
print(charts)
```
以上不起作用;这些图不会出现在 HTML 文档中。但是,以下内容会:
---
title: "Test"
output: html_document
---
```{r charts, echo=FALSE}
library("plotly")
charts<-list()
for(i in 1:length(unique(iris$Species))){
iris2<-iris[iris$Species==unique(iris$Species)[i],]
charts[[i]]<-plot_ly(iris2, x = ~Sepal.Length, y = ~Sepal.Width, type = 'bar')
}
charts[[1]]
charts[[2]]
charts[[3]]
```
我只会使用第二个选项,但我事先不知道将在列表中创建多少个图表(可能是 50+),因此告诉它专门打印列表中的第一个,然后是第二个是没有效率的等等,就像你在上面看到的那样。
同样,这些情节/交互类型的 HTML 图表的工作方式与常规图表的工作方式并不完全相同,至少在打印它们时是这样。
解决方案
推荐阅读
- php - 如何在 PHP 中使用 json_decode?
- r - Cox 模型,coxph(),无事件对照处理,种子萌发
- ansible - 剧本执行后如何将调试输出逐行重定向到文本文件中
- javascript - 如何将 CodeSandbox proyecto 转换为 React 生产应用程序?
- python - Sequential'对象在保存keras模型时没有属性'output_names'
- java - 在 com.example.u.locationtracker.MainActivity.onCreate(MainActivity.java:39)
- jquery - 将选择器样式作为脉冲动画应用于元素
- php - 如何从 Azuracast API json 输出中获取 PHP 数据?
- django - 我无法在数据库中显示保存的图像
- python - 无论如何用openpyxl的公式刷新所有单元格?