簡體   English   中英

清除R中的繪圖點

[英]Clearing plotted points in R

我正在嘗試使用動畫包在地圖上生成點的“演化”圖。 映射是從shapefile(從readShapeSpatial / readShapeLines函數)生成的。

問題是,將其繪制在for循環中時,結果是可加的,而理想的結果是使其演化。

有沒有辦法使用我缺少的par()?

我的問題是:有沒有辦法只清除從點函數繪制的點,而不清除整個圖形,從而不必重新繪制shapefile?

如果有人想看代碼:

# plotting underlying map
newyork <- readShapeSpatial('nycpolygon.shp')
routes <- readShapeLines('nyc.shp')
par(bg="grey25")
plot(newyork, lwd=2, col ="lightgray")
plot(routes,add=TRUE,lwd=0.1,col="lightslategrey")

# plotting points and save to GIF
ani.options(interval=.05)
saveGIF({
  par(bg="grey25")
  # Begin loop
  for (i in 13:44){
    infile <-paste("Week",i,".csv",sep='')
    mydata <-read.csv(file = infile, header = TRUE, sep=",")
    plotvar <- Var$Para
    nclr <- 4
    plotclr <-brewer.pal(nclr,"RdPu")
    class<- classIntervals(plotvar,nclr,style = "pretty")
    colcode <- findColours(class,plotclr)
    points(Var$Lon,Var$Lat,col=colcode)
  }
})

如果您可以接受墨水的殘留陰影或光暈,則可以使用背景顏色=“ white”或==來過度繪圖。 我們無法訪問您的形狀文件,但是您可以通過添加以下行來進行嘗試:

points(Var$Lon, Var$Lat, col="grey25")

它可能在其他先前繪制的圖形或邊界中留下空白,因為它絕對不是面向對象的。 grid和ggplot2圖形模型更加面向對象,因此,如果要發布可復制的示例,則可能是“向前”移動的替代路徑。 我似乎還記得rgl包的食譜中有動畫選項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM