我有一个使用R包blogdown创建的网站,该网站又建立在Hugo框架上。这个网站允许我发布R markdown文件。问题如下:我需要使用highcharter包在R中创建的交互式图形显示在我的帖子中。当我执行R markdown文件时,它正常显示,但是当我要求blogdown在localhost:1234为站点提供服务时,应该显示图形的空间是空白的。但是,我要求blogdown用相应的文件构建文件夹,当我检查这些文件夹时,我看到javascript文件和其他文件已经创建,以便高图交互式图形可以正确显示。我将其上传到服务器,并检查开发人员选项,我可以看到javascript抛出的错误,您可以在https://leonelmoreno.netlify.app/portfolio/2023-04-01-prueba-de-highchart/
找到它。,空格对应交互图形的位置。我曾尝试单独创建交互式图形,导出它,然后将其包含在R markdown文件中,但它不起作用。此外,在blogdown服务网站并建立我的网站与文件和文件夹之后,我去根html文件并添加,但它也不起作用。我感谢任何评论或建议,可以帮助我正确渲染高包机包图。
解决方案:
---
title: Km
author: DA
date: '2023-04-02'
slug: []
draft: no
categories:
- R
tags:
- R Markdown
description: This is meta description
image: images/portfolio/item1.jpg
---
```{r}
library(tidyverse)
library(ggplot2)
library(highcharter)
library(car)
library(widgetframe)
library(htmltools)
datos <- read_csv("fuel2.csv")
head(datos)
modelo <- lm(consumed ~ 0 + km, data = datos)
summary(modelo)
# Extraer los coeficientes del modelo de regresión lineal
pendiente <- coef(modelo)[1]
pendiente
# Crear una función para calcular el valor ajustado de 'consumed' basado en 'km'
# Función para calcular el valor ajustado de 'consumed' basado en 'km'
ajuste_consumo <- function(km) {
return(pendiente * km)
}
# Crear una función para calcular el valor ajustado de 'consumed' basado en 'km', con intervalo de confianza del 95%
ajuste_consumo_con_intervalo <- function(km) {
predicciones <- predict(modelo, newdata = data.frame(km = km), interval = "confidence")
paste(round(predicciones[1], 2), " [", round(predicciones[2], 2), ", ", round(predicciones[3], 2), "]")
}
# Crear el gráfico interactivo
grafico_interactivo <- highchart() %>%
hc_title(text = "Regresión Lineal: Consumo de Combustible vs. Kilómetros") %>%
hc_subtitle(text = paste("Consumed = ", round(pendiente, 4), " * km")) %>%
hc_xAxis(title = list(text = "Kilómetros")) %>%
hc_yAxis(title = list(text = "Consumo de Combustible (L)")) %>%
hc_add_series(data = datos, type = "scatter", hcaes(x = km, y = consumed),
name = "Datos Observados") %>%
hc_add_series(data = data.frame(km = datos$km, consumed = ajuste_consumo(datos$km)),
type = "line", hcaes(x = km, y = consumed),
name = "Ajuste de Regresión Lineal")
frameWidget(grafico_interactivo)
```