Я пытался составить диаграмму рассеяния на графике, которая показывает один и тот же числовой столбец с несколькими символами NA в двух элементах графика (цвет и символ).
Когда в группе только два значения, одно число и одно NA , график для элемента NA показывает некоторое значение вместо цвета NA (который серый).
Я знаю, что это связано с созданием непрерывной палитры, когда есть только два значения, но я не смог это исправить.Я создаю динамическое приложение, поэтому не могу предвидеть, когда произойдет ситуация.
Я представляю и пример ниже
library(plotly)
library(dplyr)
set.seed(1234)
my_data <-
data_frame(
cat = sample(LETTERS[1:3], 30, replace=TRUE, prob=c(0.4, 0.5, 0.1)),
num1 = runif(30,1,6),
num2 = runif(30,100,200),
) %>%
mutate(num2 = ifelse(row_number() == 14, NA, num2))
График без сопоставления символов (без категории 2 элемента) отображает правильный цвет для NA
plot_ly(
data = my_data,
type = "scatter",
mode = "markers",
x = ~cat,
y = ~num1,
color = ~num2,
#symbol =~cat, ## symbol mapping commented
marker = list(size = 20),
text = ~num2)
сюжет1
График с символами отображает один и тот же цвет для обеих точек.
plot_ly(
data = my_data,
type = "scatter",
mode = "markers",
x = ~cat,
y = ~num1,
color = ~num2,
symbol =~cat,
marker = list(size = 20),
text = ~num2
)
plot2 Обведенная точка должна быть цвета NA (серый)