Есть ли способ создать пузырьковую диаграмму в R, где пузырьки соприкасаются, а одна ось представляет значения?

#r #ggplot2

#r #ggplot2

Вопрос:

Я хотел бы создать пузырьковую диаграмму, в которой ось x и размер пузырьков представляют значения, но ось y не имеет значения. Я бы также хотел, чтобы пузырьки не перекрывались, а располагались рядом друг с другом. По сути, я пытаюсь воспроизвести эту диаграмму (только пузырьки, а не круговые диаграммы):

https://archive.nytimes.com/www.nytimes.com/interactive/2012/09/06/us/politics/convention-word-counts.html

Есть ли способ сделать это в R, предпочтительно с помощью ggplot2? geom_jitter не совсем справляется с задачей, потому что я не могу заставить пузырьки надежно соприкасаться. в настоящее время у ggrepel нет решения для точек: https://github.com/slowkow/ggrepel/issues/20

Есть ли другие идеи?

Редактировать: вот пример набора данных и одна попытка, которую я предпринял. В этой попытке используется geom_jitter, но, очевидно, пузырьки не расположены друг против друга, как в примере NY Times выше.

 library(ggplot2)
seed(1)

bubble_data = data.frame(
  variable = paste0("bubble_", 1:10),
  x_value=runif(10),
  size=runif(10)
)

bubble_data %>% 
  ggplot(aes(x = x_value, y = 1, size = size))  
  geom_point(position = position_jitter(seed = 1), alpha = 0.5)  
  geom_text(aes(label = variable), position = position_jitter(seed = 1))  
  theme_void()  
  theme(legend.position = "none")
  

chart_attempt

Комментарии:

1. Привет, Дрю. Любое успешное решение этого вопроса, по-видимому, должно было бы показать рабочий пример, и для этого потребовался бы набор данных для использования. Не могли бы вы предоставить образец данных, с которыми вы хотели бы, чтобы это работало?

2. @AllanCameron спасибо за совет. Я добавил образец набора данных и одну попытку, которую я предпринял для решения этой проблемы.