用户在r中拥有pch(剪辑)

时间:2012-12-31 14:18:57

标签: r plot ggplot2 pch

  

可能重复:
  How to use an image as a point in ggplot?

是否可以将用户定义的pch(剪贴画或图标或其他类型的文件)用作R base或ggplot或其他图形设备中的点。

例如:

enter image description here

set.seed(123)
mydt <- data.frame (x = rnorm(5, 5,2), y = rnorm (5,10,3), z = rnorm (5, 1,0.5))

enter image description here

这里的大小与z成正比。

2 个答案:

答案 0 :(得分:16)

使用grid.raster

library(png)
flower <- readPNG("flower.png")
pushViewport(plotViewport(margins=c(5,5,5,5)))
grid.rect(gp = gpar(fill=NA))
pushViewport(plotViewport(margins=c(5,5,5,5),
                          xscale=extendrange(mydt$x),
                          yscale=extendrange(mydt$y)))


grid.raster(image=flower,x=mydt$x,y=mydt$y,width=mydt$z, 
                interpolate=FALSE,default.units = 'native')
grid.polyline(mydt$x,mydt$y,default.units='native')
upViewport(2)

enter image description here

答案 1 :(得分:3)

对于Base图形,请查看TeachingDemos包中的my.symbolsms.image函数。