您好,我有一个使用 sendplot 包创建交互式绘图的功能,但出现了一个奇怪的错误,我在网上搜索了很多,但我什么也没找到!
我使用 R 2.15.1
问题是当我调用我的函数时,我得到了错误:
图像错误(x = xx,y = yy,z = zz,col = heat.colors(30),axes = FALSE):找不到对象“xx”
但是,如果我在控制台中逐行执行我的代码,它就可以工作(因为 xx,yy,zz,data.mat 在我的工作区中)我不明白为什么当我调用我的函数时对象不在我的工作区中.. .
这是我的代码:
Heatmap<-function(data.mat,main.str="heatmap"){
xx <- 0:dim(data.mat)[1]
yy <- 0:dim(data.mat)[2]
zz <- log(data.mat+1)
plot.call = "image( x=xx,y=yy, z=zz,col = heat.colors(30),axes = FALSE);
axis(1,0.5:(dim(data.mat)[1]-0.5),
labels=rownames(data.mat),
las = 2, line = -0.5, tick = 0,cex.axis =1);
axis(4,0.5:(dim(data.mat)[2]-0.5),
labels=colnames(data.mat),
las = 2, line = -0.5, tick = 0,cex.axis =.8)"
mai.mat = matrix(c(1.5,.5,.5,1.5), ncol=4)
mai.prc = FALSE
xy.labels=list(nb_of_sequences=t(data.mat))
x.labels=data.frame(City=rownames(data.mat))
y.labels=data.frame(Order=colnames(data.mat))
imagesend(plot.call=plot.call,
y.pos=yy,
x.pos=xx,
mai.mat=mai.mat, mai.prc=mai.prc,
xy.type="image.box",
x.labels=x.labels,
y.labels=y.labels,
xy.labels = xy.labels,
image.size="500x800",
fname.root="exPlotImage",
font.size=18)
return (0)
如果您对此有解决方案,请告诉我!谢谢