使用 ggplot 可视化 Vargha 和 Delaney 的 A

Visualizing Vargha and Delaney's A with ggplot

出于教育目的,我想在 ggplot 中可视化 Vargha & Delaney 的 A。

A 是用于比较两组有序数据的效果大小,这取决于每个数据点与另一组所有数据点的 upward/downward/sideways 比较。

为此,我希望能够用不同颜色显示所有向上、向下和相等的数据点比较。有关我正在寻找的示例,请查看这个粗略的涂鸦

为了重现性,这里有一些数据可以用来尝试:

library(tidyverse)

data_VD <- tibble(
  A = c(1, 2, 3, 6),
  B = c(1, 3, 7, 9)
)

有关如何计算 A 的参考信息,请参阅 https://journals.sagepub.com/doi/10.3102/10769986025002101,但创建绘图应该不是必需的。

你可以这样做:

library(tidyverse)

long_dat <- data_VD %>%
  {expand.grid(A = .$A, B = .$B)} %>%
  mutate(change = factor(sign(B - A))) 

ggplot(pivot_longer(data_VD, everything()), aes(x = name, y = value)) +
  geom_segment(data = long_dat, size = 1.5,
            aes(x = 'A', xend = 'B', y = A, yend = B, color = change)) +
  geom_point(size = 4) +
  scale_color_manual(values = c('#ed1e26', '#fff205', '#26b24f')) +
  theme_classic(base_size = 20) +
  scale_y_continuous(breaks = 1:10) +
  labs(x = '', y = '') +
  theme(legend.position = 'none')