Spotfire Rgraphs к таблице, используя ggplot - PullRequest
0 голосов
/ 19 сентября 2018

В течение нескольких дней я пытался заставить Spotfire создать таблицу диаграмм, которую я затем смогу построить на карте, используя метки.У меня есть следующий скрипт, который хорошо работает для базового графика R hist (), но когда я изменяю его на ggplot для создания нужных мне диаграмм, я получаю следующую ошибку

Ошибка в REvaluate (bquote ({. (Rfunction) (. (Файл), ширина =. (Ширина: ошибка: data должен быть фреймом данных или другим объектом, который может быть обработан с помощью fortify(), а не числовым вектором

Что мне нужно сделатьчтобы заставить ggplot работать в этом сценарии (если можно?), похоже, что функция split создает данные, которые не могут быть использованы ggplot?

library( RinR )

irisFrameSplit <- split( iris$Sepal.Width, iris$Species )

irisGraphsList <- 
  lapply( 
    X = irisFrameSplit,   
    FUN = function(X) 
      RGraph(
        data = list( X = X ),
        height = 680,
        width  = 680,
        package = 'ggplot2',
        expr =
        {

        hist(X, col = 'red')
        #ggplot(X, aes(x=Sepal.Width)) + geom_histogram()


        } ) )

irisGraphsDF <-
  data.frame(
    Species = names( irisGraphsList ),
    PlotImage = seq( along = irisGraphsList ),
    stringsAsFactors = FALSE )

irisGraphsDF[["PlotImage"]] <- irisGraphsList

большое спасибо за любую помощь

1 Ответ

0 голосов
/ 20 сентября 2018

просто нужно добавить оператор печати в скрипт, используйте ggplot (поэтому необходимо использовать print () для построения графика).Поскольку xyplot () включает в себя аргумент данных, RGraph не пытается отправить по векторам, указанным в аргументе формулы.

print(

    ggplot(X, aes(x = Petal.Width, )) + geom_histogram())
...