小编use*_*565的帖子

如何调整 R 中脊线图的带宽

使用包geom_density_ridges中的函数时ggridges,它始终为图中的所有密度选择带宽。但是有没有办法调整它选择的带宽呢?

我目前有一些代码可以制作山脊图,但对于底部密度来说带宽太低。我想对其进行调整,使其更平滑、不那么粗糙。

在此输入图像描述

这是我的代码:

hier_plot <- ggplot(hier_df, aes(x=x, y=as.factor(beta), fill = factor(beta))) +
  theme(axis.title = element_text(size = 15),
        axis.text = element_text(size = 15),
        legend.text = element_text(size = 10),
        panel.background = element_rect(fill = "#fffffC")) +
  labs(y = expression(beta), x = 'x', expression(beta), fill = expression(beta)) +
  geom_density_ridges(scale = 2.5) +
  scale_x_continuous(expand = c(0.01, 0)) +
  scale_y_discrete(expand = c(0.05, 0)) +
  scale_fill_brewer(palette = 'Reds')

hier_plot 
Run Code Online (Sandbox Code Playgroud)

r ggplot2 ggridges ridgeline-plot

8
推荐指数
1
解决办法
5228
查看次数

如何在 Rcpp/C++ 中将函数作为参数传递?

我正在尝试编写一个函数,该函数可以将函数作为 Rcpp 中的参数。我在 R 中编写了一个示例函数,它显示了我想要的功能类型:

simulate_and_evaluate <- function(simulate, evaluate) {
  y <- simulate(1)
  eval <- evaluate(y)
  return(eval)
}

simulate_fun <- function(n) rnorm(n, 0, 1)
evaluate_fun <- function(x) dnorm(x, 0, 1)

simulate_and_evaluate(simulate = simulate_fun,
                      evaluate = evaluate_fun)
Run Code Online (Sandbox Code Playgroud)

在这个函数中simulate_and_evaluate,它接受两个都是函数的参数,一个模拟一个数字,一个用这个模拟数字计算一个函数。例如,我们可以从标准法线模拟一个值,并评估该点标准法线的密度。有谁知道在 Rcpp 中是否有办法做到这一点?

c++ r rcpp

0
推荐指数
1
解决办法
190
查看次数

标签 统计

r ×2

c++ ×1

ggplot2 ×1

ggridges ×1

rcpp ×1

ridgeline-plot ×1