Почему я получаю сообщение об ошибке «Режим рассеяния не указан» при построении графика с помощью Plotly в R? - PullRequest
0 голосов
/ 05 июня 2019

Я получаю следующую ошибку при запуске моего кода:

plot_ly(data, x = ~RighttoWork_NonRtw, 
              y = ~market_value_level_unfunded_liability, 
              text = ~paste("State: ", state,
                            "Market Value Level Unfunded Liability", market_value_level_unfunded_liability),  
              color = ~market_value_level_unfunded_liability,  
              size = ~market_value_level_unfunded_liability, 
              type = "scatter")

Не указан режим разброса: настройка режима для маркеров Подробнее об этом атрибуте -> https://plot.ly/r/reference/#scatter-mode Ошибка: size / width значения должны быть числовыми.

Почему это так?

Я пытаюсь получить серию точек заговора с точками разного размера на основе переменных величин нефинансовой ответственности. К сожалению, я продолжаю получать это сообщение об ошибке.

1 Ответ

2 голосов
/ 05 июня 2019

Трудно ответить без воспроизводимого примера. Прежде всего, вы можете указать mode. Тогда вы можете попробовать указать маркеры. Здесь я использовал ваш код для примера на наборе данных mtcars. Размер маркеров здесь масштабируется на 3, потому что иногда аргумент size для plotly не может иметь смысла для определенных значений.

Кроме того, ваша ошибка связана с тем, что market_value_level_unfunded_liability, ваша переменная y, кажется, не числовая. Вам следует преобразовать его в числовое значение (используйте as.numeric(as.character()), если коэффициент с числовыми уровнями).

library(plotly)
data <- mtcars

plot_ly(data, x = ~mpg, 
        y = ~qsec, 
        text = ~paste("State: ", carb,
                      "Market Value Level Unfunded Liability", qsec),  
        color = ~qsec,  
        size = ~qsec,
        type   = 'scatter', 
        mode   = 'markers',
        marker = list(size = ~qsec*3)
        )

enter image description here

...