私は1つの従属変数と複数の独立変数からなるデータフレームを持っています。関係のグループは異なるテストから取られました(しかし、これは私が会った問題を解決するために重要ではありません)。GGRidges:単一密度プロットが高すぎる
私はパッケージggridgesを使用して、各関係の密度プロットを持つ1つのグラフを表しています。 1つの関係に1つの値しかない場合、ggridgesは密度プロットではなくポイントを生成します。私の問題は、その場合、密度プロットが上のスペースと重なっていることです。おそらく、ggridgesは別の密度プロットを見ることができず、以下の密度プロットが取ることができる空間を拡大するでしょう。 "scale"オプションを使用すると、2つの密度プロットの重なりを避けることができますが、密度プロットと点の重なりを避けることはできません。
スケールを0.5に設定すると、問題は解決できますが、これはそれぞれの密度プロットが小さくなるため、これが最善の方法ではありません。また、他人と重複しないもの。
以下、私が遭遇した問題のグラフを生成する再現可能な例を添付しました。 誰にも助けてくれてありがとう。何が起こっている
library(magrittr)
library(dplyr)
#>
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#>
#> filter, lag
#> The following objects are masked from 'package:base':
#>
#> intersect, setdiff, setequal, union
library(forcats)
library(ggplot2)
library(ggridges)
library(RCurl)
#> Carico il pacchetto richiesto: bitops
y_ex <- c("y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1","y1")
x_ex <- c("x1","x1","x2","x3","x3","x3","x3","x3","x3","x4","x4","x4","x5","x5","x5","x5","x5","x5","x5","x5","x5","x5","x5")
value_ex <- c(0.26,0.40,0.47,0.72,0.71,0.69,0.74,0.73,0.24,0.39,0.43,0.46,0.21,0.18,0.14,0.10,0.16,-0.10,-0.11,0.56,0.50,0.49,0.43)
data_ex <- data.frame(y_ex,x_ex,value_ex)
r_ex <- data_ex %>%
dplyr::mutate(x_ex = forcats::fct_reorder(x_ex, desc(value_ex), fun = mean))
r_ex %>%
ggplot(aes(x = value_ex, y = x_ex)) +
ggtitle(paste0("Predictors of ",y_ex)) +
geom_density_ridges(fill = "royalblue",
scale = 0.9,
color = NA,
alpha = 0.7,
rel_min_height = 0.01) +
geom_point(size = 0.5, alpha = 0.5, pch = 16) +
geom_point(data = r_ex %>% group_by(x_ex) %>% dplyr::summarise(value_ex = mean(value_ex)),
color = "firebrick",
pch = 16,
alpha = 0.5) +
scale_y_discrete("") +
scale_x_continuous("", limits = c(0, 1)) +
theme_grey(base_size = 16, base_family = "serif") +
theme(plot.title = element_text(hjust = 0.5,
lineheight = .8,
face = "bold",
margin = margin(10, 0, 20, 0),
color = "gray15"),
legend.position = "none")
#> Picking joint bandwidth of 0.0453
#> Warning: Removed 2 rows containing non-finite values (stat_density_ridges).
#> Warning: Removed 2 rows containing missing values (geom_point).`