I need to flip the numbers (and tick marks) of the y-axis and x-axis to the right and top respectively (instead of where they are now). And I would like them INSIDE the map, not on the outside. This will eventually be a small inset map (without a key or any white margin space) on another larger map.
My code:
baseInset = get_map(location=c(-160.8,18.5,-154.625,22.5), zoom=8, maptype="terrain")
mapInset<-ggmap(baseInset)
Inset <- mapInset +
geom_point(data=CoordInset, aes(x=-Long, y=Lat, fill=Type, shape=Type),
color="black", cex=1.4) +
scale_fill_manual(values=c("red", "blue"),
labels=c("Molokaiense (not geo-referenced)",
"Oahuense (not geo-referenced)")) +
scale_shape_manual(values = c(21,23),
labels=c("Molokaiense (not geo-referenced)",
"Oahuense (not geo-referenced)")) +
theme(panel.border = element_rect(fill=NA, colour = "black", size=1),
plot.margin = unit(c(0.3, 0.3, -1.7, -0.2), 'lines'),
axis.line = element_blank(),
axis.text.x = element_text(angle=45, hjust=0.9, vjust=2.2, size=8),
axis.ticks.length=unit(-0.15,"cm"),
axis.text.y = element_text(size=8, margin = margin(r = -18)))
Example of the data in CoordInset
:
Long Lat Type
1 155.2000 19.50000 Not geo-referenced
2 155.2000 19.51600 Not geo-referenced
3 155.3433 19.67571 Not geo-referenced
4 155.4000 19.80000 Not geo-referenced
5 155.4483 19.76015 Not geo-referenced
6 155.5000 19.90000 Not geo-referenced
7 155.5000 19.80000 Not geo-referenced
8 155.6000 20.00000 Not geo-referenced
9 155.6000 19.80000 Not geo-referenced
I have tried to add scale_y_continuous(position = "right")
and scale_x_continuous(position = "top")
but I get the error message:
Scale for 'y' is already present. Adding another scale for 'y', which will replace the existing scale. Scale for 'x' is already present. Adding another scale for 'x', which will replace the existing scale.
Is there a way to accomplish this using theme()?
The bad result: