R Highcharter 中的密度图
Density Plot in R Highcharter
我正在尝试在 highcharter R
中绘制类似的密度图。我是 highcharter
的新手,非常感谢任何指导。
dt <- data.frame(x=rnorm(1000),y=sample(c(0,1),size = 1000,replace = T))
library(ggplot2)
ggplot(data = dt) +
aes(x = x,fill=factor(y)) +
geom_density(adjust = 1,alpha=0.5)
我的尝试:
library(highcharter)
library(dplyr)
hcdensity(density(dt$x), area = TRUE) %>%
hc_add_series(density(dt$y), area = TRUE)
您似乎需要两条曲线(y = 0 和 y = 1)。只会调用 dt$x 的 hcdensity,首先是 y=0。然后对于 y=1,对 hc_add_series 使用 'density'。使用type='area'填充.
hcdensity(dt$x[dt$y==0]) %>%
hc_add_series(density(dt$x[dt$y==1]), type='area')
如果你想包含多条曲线或更通用的解决方案,试试这个:
library(purrr)
tapply(dt$x, dt$y, density) %>%
reduce(.f = hc_add_series, type='area', .init=highchart())
这很有帮助:
我正在尝试在 highcharter R
中绘制类似的密度图。我是 highcharter
的新手,非常感谢任何指导。
dt <- data.frame(x=rnorm(1000),y=sample(c(0,1),size = 1000,replace = T))
library(ggplot2)
ggplot(data = dt) +
aes(x = x,fill=factor(y)) +
geom_density(adjust = 1,alpha=0.5)
我的尝试:
library(highcharter)
library(dplyr)
hcdensity(density(dt$x), area = TRUE) %>%
hc_add_series(density(dt$y), area = TRUE)
您似乎需要两条曲线(y = 0 和 y = 1)。只会调用 dt$x 的 hcdensity,首先是 y=0。然后对于 y=1,对 hc_add_series 使用 'density'。使用type='area'填充.
hcdensity(dt$x[dt$y==0]) %>%
hc_add_series(density(dt$x[dt$y==1]), type='area')
如果你想包含多条曲线或更通用的解决方案,试试这个:
library(purrr)
tapply(dt$x, dt$y, density) %>%
reduce(.f = hc_add_series, type='area', .init=highchart())
这很有帮助: