我一直在尝试用静态卫星地图填充google电子表格列,给出纬度和经度列的坐标。
如下所示:
=IMAGE("https://api.mapbox.com/styles/v1/mapbox/streets-v10/static/"&K1&","&J1&",14.25,0,60/600x600?access_token=API_KEY")
我的问题是使用Lat构造API调用,Lat是存储在Google表单元格中的长对。
我从Google sheets和mapbox都得到了一系列错误,所以显然我在sheets中的语法很糟糕。当我在浏览器中输入url时,使用硬编码的lat,lng会显示正确的地图图像。
一个典型的Google错误是
函数添加参数%1需要数字值。但“https://api.mapbox.com/styles/v1/mapbox/streets-v10/static/”是文本,不能强制转换为数字
有没有人能帮忙?
发布于 2018-12-17 21:04:12
我认为你有Lat,很长一段错误的方式。一些映射系统需要Lat、Lng,还有一些需要Lng、Lat (请看图!)
如果您更改如下,您将获得一个图像,但您可能需要使用其他参数来让它按您需要的方式工作。
=IMAGE("https://api.mapbox.com/styles/v1/mapbox/streets-v10/static/"&K3&","&J3&",14.25,0,60/600x600?access_token=API_KEY")
您还可以使用下面的表单,这是从组件部分构造API字符串的另一种方式。
=image(concatenate("https://api.mapbox.com/styles/v1/mapbox/streets-v10/static/",K3,",",J3,",14.25,0,60/600x600?access_token=ACCESS_KEY"))
在这两种情况下,坐标后的参数表示所需的缩放、方向角度和图像分辨率。你可以在https://www.mapbox.com/help/static-api-playground/这里尝试图像格式。
还请注意,您可以在Google sheets中使用image参数调整图像在单元格中的显示方式(调整大小、拉伸等)。这是在这里解释的https://support.google.com/docs/answer/3093333?hl=en
https://stackoverflow.com/questions/53801375
复制相似问题