R ggplot2 boxplot - largura da caixa variável por valores de função / vetor

Eu tenho um quadro de dados com vários valores de grupos e gostaria de ter um boxplot por categoria (reunidos). Quero ter cada boxplot com uma largura diferente, com base não na contagem de linhas por categoria, mas em uma soma de colunas.

Por exemplo, com o seguinte data.frame:

Data <- data.frame(roadType = sample(c("Ramp", "Primary Street", "Highway"),100,replace=TRUE),
         drivesCount = sample(1:100,100,replace=TRUE),
        happyPercentage=sample(c(0,0.25,0.5,0.75,1),100,replace=TRUE))

Eu sei que há uma maneira de ter uma largura variável com base na contagem de linhas, assim:

ggplot(Data, aes(x=roadType, y=happyPercentage)) +
  geom_boxplot(varwidth = TRUE, alpha=0.2) +
  theme(legend.position="none") +
  labs(x = "Road Type", y = "Happy People Percent") +
  theme(plot.title = element_text(hjust = 0.5))

Mas eu quero ter um gráfico com um boxplot parahappyPercentage porroadType, com largura baseada nodrivesCount proporção do roadType específico do total drivesCount.

Isso é possível? Como eu posso fazer isso?

questionAnswers(1)

yourAnswerToTheQuestion