在rmarkdown文件的html输出中为循环内部渲染tmap贴图

在rmarkdown文件的html输出中为循环内部渲染tmap贴图,r,loops,r-markdown,tmap,R,Loops,R Markdown,Tmap,我试图在rmarkdown文件中使用for循环生成tmap。它们不会显示在html输出中。我在别处读到过使用标记列表函数可能会有帮助,但在我的例子中没有,并且返回了一个错误(我可能做错了)。有什么想法吗 使用tmap的此尝试无效。我得到了这个错误:“as.character.default(x)中的错误:没有将这个S4类强制为向量的方法” html抱歉,我不得不大量编辑这篇文章。不幸的是,它不是一个reprex,使用完整的代码生成一个reprex有点困难,但希望这仍然有助于理解情况。让我知道如果

我试图在rmarkdown文件中使用for循环生成tmap。它们不会显示在html输出中。我在别处读到过使用标记列表函数可能会有帮助,但在我的例子中没有,并且返回了一个错误(我可能做错了)。有什么想法吗

使用tmap的此尝试无效。我得到了这个错误:“as.character.default(x)中的错误:没有将这个S4类强制为向量的方法”


html抱歉,我不得不大量编辑这篇文章。不幸的是,它不是一个reprex,使用完整的代码生成一个reprex有点困难,但希望这仍然有助于理解情况。让我知道如果我能澄清任何事情…对不起,我不得不大量编辑这篇文章。不幸的是,它不是一个reprex,使用完整的代码生成一个reprex有点困难,但希望这仍然有助于理解情况。如果我能澄清任何事情,请告诉我。。。
html <- list()

for (i in 1:4) {

 
tmap_mode("view")

html <- c(html, 
            list(h3(paste0("Carte_Dept_", i)),
  tm_basemap(leaflet::providers$Stamen.Toner) +
  tm_shape(communes_dept_pct) +
  tm_fill("pct",
          palette = "-RdYlGn",
          style ="quantile",
          title ="% bât. FG",
          alpha = 0.6,
          popup.vars = c("Commune:" = "nom","% bât. FG:" = "pct"),
          group = "Communes") +
  tm_borders(col = "black", lwd = 0.5) +
  tm_shape(spdf) +
  tm_dots(size = 0.05,
            col = "red",
            title = "Bâtiments FG",
            cluster = T,
            popup.vars = c("Type bâtiment:" = "tr002_type_batiment_description","Classe GES: " = "classe_estimation_ges",
                          "Nom méthode:" = "nom_methode_dpe"),
            group = "Bâtiments F-G") +
  tm_shape(spdf2) +
  tm_dots(size = 0.05,
          shape = 21,
          col = "Domaine de travaux",
          title = "Artisans RGE",
          legend.show = F,
          cluster = F,
          popup.vars = c("Nom:" = "Nom de l'entreprise","Adresse: " = "Adresse", "Ville:" = "Ville",
                        "Domaine:" = "Domaine de travaux", "Effectif:" = "Tranche d'effectif salarié de l'établissement (INSEE)"),
          group = "Artisans RGE")
          )
  )
}

tagList(html)

html <- list()

for (i in 1:4) {

html <- c(html, 
            list(h3(paste0("Carte_Dept_", i)),
                leaflet(communes_Occitanie_pct) %>%   addProviderTiles('Stamen.Toner') %>%
                setView(lng = 1.54,           lat = 43.7,
                zoom = 7)
  
          )
  )
}

tagList(html)