Я пытаюсь избавиться от полей карт, созданных с помощью пакета 'maps' в R. Я получаю некоторые из них, устанавливая par(mar=c(0,0,0,0))
и используя опцию border = 0 в функции map()
,Но по сравнению, например, с диаграммой рассеяния с mar=c(0,0,0,0)
все еще много дополнительного пространства.Вот некоторый код для создания примера карты, а также обычный график рассеяния для сравнения.
library(maps)
x <- sample(360, 10)-180
y <- sample(160, 10)-80
x.boundary <- c(-180, 180, 0, 0)
y.boundary <- c(0, 0, -80, 80)
pdf("map.tmp.pdf", width=9, height=4)
par(mar=rep(0,4))
map("world", border=0, ylim=c(-80, 80), fill=TRUE, bg="gray", col="white")
points(x, y, pch=19, col="blue")
points(x.boundary, y.boundary, pch=19, col="red")
# map.axes()
dev.off()
pdf("scatter.tmp.pdf", width=9, height=4)
par(mar=rep(0,4))
plot(x, y, xlim=c(-180, 180), ylim=c(-80, 80), pch=19, col="blue")
points(x.boundary, y.boundary, pch=19, col="red")
dev.off()
Если вы раскомментируете функцию map.axes()
, вы можете увидеть, что даже с условно подавленными полями пространство было зарезервировано дляОси.
Любые идеи высоко ценятся, это раздражало меня целую вечность.