Search code examples
rplotpolar-coordinatesazimuthplotrix

Plotrix R package polar.plot symbol overwrite


I'm using a polar plot to describe satellite position during a time series. The following question uses the polar.plot function from the R package plotrix. An example plot:

library(plotrix)
polar.plot(c(0,1,3,4),c(30,60,90,120),start=90,clockwise=TRUE,rp.type="s",
                          point.symbols=19,radial.lim=c(0,5),boxed.radial=F)

The issues I'm running across is that this function plots the labels and axis over the data values (see radial positions 0 and 3), and I don't see a way to control this behavior. I can run a workaround by adding the data values again (adding to the previous plot) with axis and labels turned off, but this is less than elegant:

polar.plot(c(0,1,3,4),c(30,60,90,120),start=90,clockwise=TRUE,rp.type="s",
           grid.left=F,point.symbols=19,show.radial.grid=FALSE,
           show.grid.labels=FALSE,show.grid=FALSE,labels=NULL,add=TRUE)

My question is two fold:

  1. Is there a way to control this in plotrix that I've missed in the documentation?
  2. Is there another package that can easily handle this kind of azimuth polar plot?

Solution

  • This seems to have been fixed. I've not looked at the change log to determine where the change happened, but it is fixed as of at least plotrix 3.5-12.

    library(plotrix)
    polar.plot(c(0,1,3,4),c(30,60,90,120),start=90,clockwise=TRUE,rp.type="s",point.symbols=19,radial.lim=c(0,5),boxed.radial=F,grid.col="red",point.col="green")
    

    polar.plot

    Currently the axes are plotted correctly under the data points. The labels are (reasonably) plotted on top. The overplot option discussed above would work well if it is necessary to have the data overlay the labels.