我在R中使用ggplotly创建了一个Map。要创建一个链接,它需要524kb或以下,但它目前是1。有没有什么好的方法可以减少文件大小,以便我可以导出它?还是这完全不切实际?
xxls0lw81#
如果Map包含多边形,请考虑rmapshader::ms_simplify(),它使用Visvalingam algorithm来减少用于构建多边形的点数。下面是一个可重复的示例:
rmapshader::ms_simplify()
p <- raster::shapefile(system.file("external/lux.shp", package = "raster")) # load data p2 <- rmapshaper::ms_simplify(p, keep_shapes = TRUE) # simplify polygons
现在可视化结果:
par(mfrow = c(1,2)) plot(p, main = paste("before:", object.size(p), "bytes")) plot(p2, main = paste("after:", object.size(p2), "bytes")) dev.off()
您可以编辑keep参数的默认设置,减少要保留的点数,从而进一步减小对象大小。这是以较粗糙的图像为代价的。
keep
1条答案
按热度按时间xxls0lw81#
如果Map包含多边形,请考虑
rmapshader::ms_simplify()
,它使用Visvalingam algorithm来减少用于构建多边形的点数。下面是一个可重复的示例:
现在可视化结果:
您可以编辑
keep
参数的默认设置,减少要保留的点数,从而进一步减小对象大小。这是以较粗糙的图像为代价的。