我有 rasterLayers,其中包含来自机载红外摄像机的数字温度数据。我可以使用 ggplot 创建一个假彩色图。我想将绘图另存为 PNG,零值是透明的和/或创建 KML 文件以在 Google 地球上显示。
我一直在使用下面的代码循环创建 PNG 文件。“heatMapPlot”是使用 ggplot 创建绘图的函数 - 它有效。它设置 na.value <- "#000000" 以便我可以检测是否通过 print( p ) 添加了边框-它们是。
png(file = fname, width = NCOLS, height = NROWS)
p <<- heatMapPlot(
theRasterLayer[[passNum]], colors, colorvalues
)
print(p)
dev.off()
如果我绘制 p
> plot(p)
结果正是我想要的,但它没有被保存。
使用 print(p) 将 p 写入文件会在绘图周围添加一个大约 80 像素宽的宽白色边框,并且绘图会缩放以适应宽度和高度。放置在 Google 地球上是不可接受的。下图显示了黑色区域的输出ggplot输出,白色边框由“print(p)”添加。(感觉像自动更正)
如何在没有边框的情况下将 PNG 写入磁盘和/或如何将 ggplot 输出转换为 KML?
编辑我认为这是不可能的,我将直接转到 KML 文件,但存在调色板问题。