решетка levelplot только терпит неудачу под RApache - PullRequest
3 голосов
/ 18 октября 2010

Я работаю над веб-приложением PHP, которое вызывает R через curl и RApache.Большинство вещей работают нормально.Но одна решетка выдает эту ошибку:

RApache Предупреждение / Ошибка !!! Ошибка в uy + c (-1, 1): не числовой аргумент для двоичного оператора

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

Это загруженные библиотеки, когда скрипт запускается в RApache:

library(Brew)
library(Cairo)
library(rjson)
library(DBI)
library(RMySQL)
library(reshape)
library(plyr)
library('RColorBrewer')
library(ggplot2)
library(lattice)
library(latticeExtra)
library(hexbin)

Вот немного скрипта:

colgrad.pal<-colorRampPalette(brewer.pal(11,'Spectral'), interpolate='spline')

//problem plot
dists.med.lplot<-levelplot(value~starttime+groupname|dists, data=MDist.median,
  col.regions=rev(colgrad.pal(200)),colorkey=list(col=rev(colgrad.pal(200))),
  xlab='Time(s)',ylab='Treatment',
  main='Level Plot of Median Distance',
  layout=c(1,3))

А вот и ссылка на файл данных.Я читаю это так: // ссылка выглядит ненадежной, поэтому удалена

Данные выглядят так:

'data.frame':   2880 obs. of  6 variables:
 $ groupname: Factor w/ 8 levels "rowA","rowB",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ fCycle   : Factor w/ 6 levels "Cycle 1","Cycle 2",..: 6 6 6 6 6 6 6 6 6 6 ...
 $ fPhase   : Factor w/ 2 levels "Dark","Light": 1 1 1 1 1 1 1 1 1 1 ...
 $ starttime: int  0 60 120 180 240 300 360 420 480 540 ...
 $ dists    : Factor w/ 3 levels "inadist","lardist",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ value    : num  47.5 64 78.3 39.2 53.7 ...

Любые идеи о том, в чем проблема или как лучше устранить неполадкиэто?

ETA версия / информация о платформе

        [platform] => sparc-sun-solaris2.10
        [arch] => sparc
        [os] => solaris2.10
        [system] => sparc, solaris2.10
        [status] => 
        [major] => 2
        [minor] => 10.1
        [year] => 2009
        [month] => 12
        [day] => 14
        [svn rev] => 50720
        [language] => R
        [version.string] => R version 2.10.1 (2009-12-14)

1 Ответ

2 голосов
/ 18 октября 2010

Ошибка пахнет проблемой с вашими данными.Я бы попробовал следующее:

  • до фактического вызова plot() и др., Сохраните все ваши (соответствующие) данные через save(x, y, z, ..., file="/tmp/dbg.RData")
  • , затем загрузите все соответствующие данныеиз сохраненного файла в «обычном» сеансе R и проверьте и сравните
  • , это должно позволить вам точно определить проблему с данными, которую вы затем сможете обойти с помощью дополнительных проверок работоспособности и т. д., чтобы предотвратить падение вашего фактического кодаболее.
...