我试图在R中绘制一张地图,轴上有经度和纬度标签 我使用以下代码绘制地图:
plot(countries, xlim=c(5,17), ylim=c(42,48),axes=FALSE)
#where xlim is the degrees east/west, and ylim north/south
在情节中我压制了轴,因为我不想让他们说'" 5,6,7等......",我需要他们说" ; 5度E,6度E ......"其中"度" part是度数符号(即上标o)。下面的脚本可以做到这一点,但是我希望它能说'#34; 6度E,8度E等等......"
axis(1, at=c(6,8,10,12,14,16), labels=c(expression(6*degree),expression(8*degree),
expression(10*degree),expression(12*degree),expression(14*degree),
expression(16*degree)))
提前致谢。
答案 0 :(得分:0)
这很有效,但我确信它可以以更优雅的方式完成。
plot(c(), xlim=c(5,17), ylim=c(42,48),axes=FALSE)
degs = seq(6,16,2)
为每个项目创建一个bquote字符串,将degree
替换为符号,将x
替换为degs
中的数字:
a = sapply(degs,function(x) bquote(.(x)*degree ~ E))
在bquotes列表中的每个项目上调用expression
:
axis(1, at=degs, lab=do.call(expression,a))
答案 1 :(得分:0)
这绝对比我的解决方案更优雅......
axis(1, at=c(6,8,10,12,14,16),
labels=c(expression(paste(6*degree,"E")),expression(paste(8*degree,"E")),
expression(paste(10*degree,"E")),expression(paste(12*degree,"E")),
expression(paste(14*degree,"E")),expression(paste(16*degree,"E"))))