Description Usage Arguments Details Value Author(s) See Also Examples

Shift Symbols such that there is no overlap

1 | ```
NoOverlap(x, y, focsiz, SEL = 0, OLDx = 0, OLDy = 0, cenx = 0, ceny = 0)
``` |

`x` |
x-location |

`y` |
y-location |

`focsiz` |
symbol size |

`SEL` |
selection of which symbols to shift |

`OLDx` |
x-locations of origin |

`OLDy` |
y-locations of origin |

`cenx` |
center x |

`ceny` |
center y |

Program is used for finding positions for exploding. A vector is dcalculated from each origin to each point and explosions are projected along these directions until a position is found that does not overlap. The position is nudged by a value of focsiz at each step. If OLDx and OLDy are not provided, cenx and ceny are used as origin points.

x,y list of new positions

Jonathan M. Lees<[email protected]>

ExplodeSymbols

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | ```
draw.circ<-function (x, y, r, ...)
{
CI = RPMG::circle(1)
for (i in 1:length(x)) {
Cx = x[i] + r * CI$x
Cy = y[i] + r * CI$y
lines(c(Cx, Cx[1]), c(Cy, Cy[1]), type = "l", ...)
}
}
x = rnorm(20)
y = rnorm(20)
rx = range(x)
ry = range(y)
drx = diff(rx)
dry = diff(ry)
XPCT=.2
rx = c(rx[1]-XPCT*drx, rx[2]+XPCT*drx)
ry = c(ry[1]-XPCT*dry, ry[2]+XPCT*dry)
plot(rx , ry , type='n', asp=1, xlab="km", ylab="km")
u = par("usr")
focsiz = 0.04* (u[2]-u[1])
draw.circ(x, y, focsiz, col='red')
NXY = NoOverlap(x,y,focsiz)
plot(rx , ry , type='n', asp=1, xlab="km", ylab="km")
u = par("usr")
focsiz = 0.04* (u[2]-u[1])
draw.circ(NXY$x, NXY$y, focsiz, col="blue" )
segments(x,y,NXY$x, NXY$y)
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.