Widgets HTML não podem ser representados em texto simples (precisa de html)

@[TOC](Widgets HTML não podem ser representados em texto simples (precisa de html))

Recentemente, descobriu-se que o uso do pacote DT no vscode relatava um erro e o html não podia ser exibido

Eu encontrei um problema semelhante no stackoverflow e
dei a seguinte solução
para baixar o seguinte pacote:

 install.packages("htmlwidgets")

Então use o seguinte código

library(IRdisplay)
htmlwidgets::saveWidget(m, "m.html")
display_html('<iframe src="m.html" width=100% height=450></iframe>')

Onde m é o que você deseja exibir, isso gerará um arquivo html, se você não quiser gerar html, use o seguinte código

rawHTML = base64enc::dataURI(mime = "text/html;charset=utf-8", file = "m.html")
display_html(paste("<iframe src=", rawHTML, "width=100% height=450></iframe>", sep = "\""))
unlink("m.html")

Por fim, o respondente original o integrou em uma função

embed = function(x, height) {
    
    
    library(IRdisplay)
    tmp = tempfile(fileext = ".html")
    htmlwidgets::saveWidget(x, tmp)
    rawHTML = base64enc::dataURI(mime = "text/html;charset=utf-8", file = tmp)
    display_html(paste("<iframe src=", rawHTML, "width=100% height=", height, "id=","igraph", "scrolling=","no","seamless=","seamless", "frameBorder=","0","></iframe>", sep = "\""))
    unlink(tmp)
}

Efeitos do meu uso
insira a descrição da imagem aqui
Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/qq_54423921/article/details/130460323
Recomendado
Clasificación