使用 ggplot 将 Spotfire Rgraphs 转换为 table
Spotfire Rgraphs to table using ggplot
几天来我一直在尝试让 Spotfire 创建一个 table 图表,然后我可以使用标签将其绘制在地图上。我有以下脚本,适用于基本 R hist() 图,但是当我将其更改为 ggplot 以创建我需要的图表时,出现以下错误
重估错误(bquote({
.(Rfunction)(.(file), width = .(width : Error : 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
非常感谢您的帮助
只需要在脚本中添加一条打印语句,使用ggplot(所以必须使用print()来绘制)。由于 xyplot() 包含数据参数,因此 RGraph 不会尝试发送在其公式参数中命名的向量。
print(
ggplot(X, aes(x = Petal.Width, )) + geom_histogram())
几天来我一直在尝试让 Spotfire 创建一个 table 图表,然后我可以使用标签将其绘制在地图上。我有以下脚本,适用于基本 R hist() 图,但是当我将其更改为 ggplot 以创建我需要的图表时,出现以下错误
重估错误(bquote({
.(Rfunction)(.(file), width = .(width : Error : 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
非常感谢您的帮助
只需要在脚本中添加一条打印语句,使用ggplot(所以必须使用print()来绘制)。由于 xyplot() 包含数据参数,因此 RGraph 不会尝试发送在其公式参数中命名的向量。
print(
ggplot(X, aes(x = Petal.Width, )) + geom_histogram())