Я пытаюсь построить пузырьковый график, например, со следующими данными:
# install.packages("tidyverse")
# install.packages("plotly")
# install.packages("viridis")
library(tidyverse)
library(plotly)
library(viridis)
data <- tribble(
~race, ~gender, ~count,
"race1", "gender1", 15,
"race1", "gender2", 58,
"race1", "gender3", 59,
"race2", "gender1", 100,
"race2", "gender2", 12,
"race2", "gender3", 13,
"race3", "gender1", 14,
"race3", "gender2", 39,
"race3", "gender3", 87
)
Когда я запускаю команду ggplot, чтобы создать цветной график рассеяния, я получаю больше или меньше того, что хочу (код и рисунок ниже):
bubble <- ggplot(data = data, aes(x = race, y = gender)) +
geom_point(aes(size = log10(count) * 4, fill = count), shape = 21) +
scale_fill_viridis(discrete = F) +
geom_text(aes(label = count), size = 4) +
scale_size_identity() +
xlab("Race") +
ylab("Gender") +
theme_classic()
Изображение пузырькового графика, закрашенное переменной подсчета
Однако, когда я использую следующую команду для преобразования этого графика вИнтерактивный график, я теряю цветовые различия (см. рисунок ниже).Я почесал голову над этим какое-то время, и, похоже, не могу найти решение проблемы ... Похоже, что в графике сохраняются различия в цвете для других типов графиков, которые я сделал (например, гистограммы).
Я также получаю прикрепленное предупреждающее сообщение:
ggplotly(bubble)
> Warning message:
In L$marker$color[idx] <- aes2plotly(data, params, "fill")[idx] :
number of items to replace is not a multiple of replacement length
Полная версия того же графика
Кто-нибудь имеет представление о том, что происходит/ Как сохранить цвет заливки, который я указал на исходном графике ggplot?