R 完全无边界地策划

R 完全无边界地策划,r,plot,R,Plot,我在png图像文件上设置了一个带有透明叠加散点图的漂亮绘图。我希望我的绘图窗口和pdf输出与png-962x745的大小完全相同 但是,即使关闭轴、注释和帧,R仍然会在图像周围留下一个边框 这可以用一个简单的例子来说明:这个图显示了两个点,它们应该位于图的最外端。但事实并非如此: plot(rbind(c(1,745),c(962,1)),bty ="n",axes=F,frame.plot=F, xaxt='n', ann=FALSE, yaxt='n', asp=745/962) 与PDF

我在png图像文件上设置了一个带有透明叠加散点图的漂亮绘图。我希望我的绘图窗口和pdf输出与png-962x745的大小完全相同

但是,即使关闭轴、注释和帧,R仍然会在图像周围留下一个边框

这可以用一个简单的例子来说明:这个图显示了两个点,它们应该位于图的最外端。但事实并非如此:

plot(rbind(c(1,745),c(962,1)),bty ="n",axes=F,frame.plot=F, xaxt='n', ann=FALSE, yaxt='n', asp=745/962)
与PDF设备一起:

pdf(width=10.02,height=7.76)
par(mar=rep(0, 4),mai=rep(0, 4), xpd = NA) 
plot(rbind(c(1,745),c(962,1)),bty ="n",axes=F,frame.plot=F, xaxt='n', ann=FALSE, yaxt='n', asp=745/962)
dev.off()
尝试:


您必须设置边距:

par(mar=c(0,0,0,0))

您还可以使用
网格
图形来避免这些默认轴,等等

library(jpeg)
library(grid)

d = data.frame(x=rnorm(100, 10), y=rnorm(100, -100))
utils::download.file("http://i.imgur.com/5MexD.jpg", "img.jpg")
img = readJPEG("img.jpg")


w <- convertUnit(unit(ncol(img),"pt"), "in", value=TRUE)
h <- convertUnit(unit(nrow(img),"pt"), "in", value=TRUE)

dev.new(width=w, height=h)    
grid.raster(img, width=unit(1,"npc"), height=unit(1,"npc"))

 v = dataViewport(xData=d$x, yData=d$y)
 grid.points(d$x,d$y, default.units="native", vp=v, 
             gp=gpar(col="white"), pch=8)
库(jpeg)
图书馆(网格)
d=数据帧(x=rnorm(100,10),y=rnorm(100,-100))
utils::download.file(“http://i.imgur.com/5MexD.jpg“,“img.jpg”)
img=readJPEG(“img.jpg”)

这里是最好的解决方案。只需将轴设置为0

plot(1:10, axes = 0)

我一直在努力解决这个问题,
box=FALSE
为我工作

例如:


img_03=na.省略(img_02)
png(文件=粘贴(“ndvi”,“.png”,sep=”“),bg=“透明”)
地块(img_03,
图例=假,
轴=0,
frame.plot=0,
框=假,
useRaster=0,
col=盐酸颜色(100,“RdYlGn”)
)
发展主任()

@user1216731不同的单位,我相信是一样的
mai
以英寸为单位,
mar
以行为单位。我尝试了mar选项,但它不起作用:(.可能回答吗?巴蒂斯特:有趣的方法,我会试试看,这个解决方案很完美……但是这个点命令如何转换为网格点(xy,col=“#ff000012”,pch=16,cex=1)…好的,明白了,这些参数进入gparI的mar选项,但它不起作用:(.有可能回答吗?dateHi最简单的解决方案,欢迎使用Stackoverflow:)如果您可以添加一个简短的运行示例,并添加多一点上下文,那就太好了。img_03=na.omit(img_02)png(file=paste(“ndvi”,“.png”,sep=“”),bg=“transparent”)plot(img_03,legend=FALSE,axes=0,frame.plot=0,box=FALSE,useRaster=0,col=hcl.colors(100,“RdYlGn”))dev.off()您还可以编辑答案,包括您编写的内容,同时还可以将其包装成代码记号(`)
plot(1:10, axes = 0)