问题标签 [mapbox-static-maps]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
539 浏览

mapbox - 如何设置mapbox静态地图标记偏移?

如果标记形状是一个水滴,我们需要设置它的偏移量,那么将锚点设置为偏心标记的中心是没有意义的。

我在 mapbox API 中找不到任何控制 mapbox 静态图像地图标记偏移的选项。 在此处输入链接描述

我脑海中浮现的唯一想法是检测带有一些偏移量的 lng/lat。例如,我们可以初始化隐藏的 mapbox-gl-js 地图 100px/100px 大小并使用 project->update pixels offset->unproject 来获取 lng lat 或其他方式。

0 投票
1 回答
264 浏览

python - 在地图框中转换北、南纬度、东、西经度并缩放到中心和大小

自从我的问题将北、南、东、西和缩放到地图框中的中心和大小昨天关闭,我今天找到了答案。我正在创建一个新问题。

如上一个问题所述。我想在 mapbox 上创建一个图像,该图像以北纬、东经、南纬、西经和缩放因子为界。结果应该是宽度、高度、中心纬度和中心经度。

0 投票
1 回答
113 浏览

ios - 使用 MapboxStatic api 时,标记叠加层必须是 png、jpg 或 webp

这就是我创建标记并将其添加到叠加层数组的方式:

但是当我尝试做快照时:

为什么会这样?

这是我尝试过的:

在此处输入图像描述

0 投票
3 回答
1053 浏览

flutter - 在颤动的地图框中获取带有标记的静态图像

我想通过从 mapbox 调用 API 来获取静态图像,但它返回了这条消息:

我使用 mapbox_search 包来创建 API。这是我的代码:

getStaticImageWithMarker() 函数返回此 api 用于创建图像,但我得到了我在顶部提到的错误。

有没有人知道我在这个 APIcalling 中做错了什么?

0 投票
1 回答
242 浏览

mapbox - 在 Mapbox 静态图像中设置语言

我正在使用 Mapbox 静态图像 API 向用户显示与他们正在查看的页面相关的地图切片的图像。我们的用户来自许多国家,并希望得到正确本地化的国家、城市名称等。

问题
是否可以以某种方式设置 Mapbox 静态图像中所有标签的语言?

我想我可以通过为我们想要支持的每种语言创建一个 Mapbox Studio 样式来实现这一点,但是我们在自定义样式中有很多自定义,所以我宁愿避免手动维护所有支持语言的版本。

我尝试使用操场https://docs.mapbox.com/playground/static/并通读文档,但没有找到任何让人想起设置语言环境的内容

0 投票
1 回答
119 浏览

mapbox - 使用 MapBox 静态 API 中的特征大小补偿分辨率变化

我在一个项目中使用 MapBox 的静态 API。无论分辨率如何,我都设法在纬度和经度方面加载具有相同宽度和高度的地图。例如,这样无论用户的屏幕分辨率如何,用户都可以看到相同的区域。问题在于,在较大的分辨率下,特征——尤其是文本相对而言显得更小。例如,这两张地图看起来非常相似,除了文字的大小(以及其他一些细节,如线条的粗细):

https://api.mapbox.com/styles/v1/mapbox/outdoors-v11/static/0.63189425,46.195750258333334,14.3/540x285@2x?access_token=ACCESS_TOKEN

在此处输入图像描述

https://api.mapbox.com/styles/v1/mapbox/outdoors-v11/static/0.63189425,46.195750258333334,13.15/240x126@2x?access_token=ACCESS_TOKEN

在此处输入图像描述

有没有办法弥补这一点,让较大图像上的文本打印得更大,线条更粗?(以像素为单位)。结果是,例如,两个 6 英寸的屏幕以相同的实际大小(厘米)打印文本,而不管它们的像素数如何。

我研究了图层和过滤器,但似乎没有一种直接的方法可以实现这一点。看起来设计新地图可能是可行的方法,但我使用的是默认地图,我不知道从哪里开始。

谢谢你

0 投票
1 回答
118 浏览

reactjs - 如何在带有 Deck-GL 层的 Mapbox-GL 静态地图组件中嵌入退出按钮

我有以下映射代码,

我想将按钮放在地图内,但它显示在它的顶部,如此处所示

渲染地图

我如何确保按钮包含在地图中而不是在地图上呈现?

0 投票
1 回答
267 浏览

swift - 更改静态地图图像中折线的颜色

我正在使用 MapboxStatic 成功创建静态图像,并将记录的轨道坐标作为 GeoJson 数据。

我不知道如何编辑绘制在图像上的路线的颜色 - 它默认为黑色/灰色,我找不到更改它的方法。

我意识到它必须是通过编辑 GeoJson 属性本身,但我不知道如何快速实现它?

很想知道如何以某种方式改变颜色......

0 投票
1 回答
514 浏览

api - Mapbox API 请求静态地图和折线

我正在改写我之前提出的一个问题,希望它能给我一些反馈。

我需要从 Mapbox 生成一个静态地图,显示两个端点和它们之间的折线路线。下面概述的方法是我正在使用的。它有时有效,有时无效——这就是让我发疯的原因。

首先,我使用两个 GPS 端点发出生成折线的 API 请求。然后我使用带有两个端点和折线的第二个 API 请求来生成静态地图。第一部分似乎总是有效。我得到了一条可以通过在线解码工具运行的编码折线,它可以很好地显示路径上的各个点,但是从 Mapbox 生成地图的第二步有时会给我预期的地图,有时会给我一个错误代码。代码通常是 {"message":"Not Found"},但有时我会收到 {"message":"Not Authorized - No Token"} 错误代码。

我将此 API 与两个端点一起使用以获取具有折线的 JSON 文件: https ://api.mapbox.com/directions/v5/mapbox/driving/POINT1;POINT2?access_token=TOKEN

然后,一旦我有了折线,我就使用这个 API 来生成地图:

https://api.mapbox.com/styles/v1/mapbox/streets-v11/static/pin-s-a+9ed4bd(POINT1),pin-s-b+000(POINT2),path-5+f44- 0.5(POLYLINE)/auto/500x300?access_token=TOKEN

这工作正常...

点 1 = -87.321536,36.584454

点 2 = -104.793676,38.749513

折线 = }kh~Ez{}sO|HUuHmj@uhHbOyAla@kisAdelC|aMf~w@egO|uaAahfBr{|@w_@sAozkCcwFsp@v]__w@ hjFjf@bdCkaJhmzAiyXtzb@fJ|{@{p[|~yErtBdacE{x^vkvHrZfuKo[tpBfxSrcuBocGpi_AqhCvjb@wgAvfsDhyc@fkrD~mD~bkDayD~ywCsui@vjmEoyBpk|AiOhHrvEdueApda@huoA|v[zuhFsySvwaAvbDwqHxXpwDYj@riJULheEfXh^tdAj~I ^gIhAkEY~@kHseBlGyC^kA

地图 API 请求 = https://api.mapbox.com/styles/v1/mapbox/streets-v11/static/pin-s-a+9ed4bd(-87.321536,36.584454),pin-s-b+000(-104.793676 ,38.749513),path-5+f44-0.5(}kh~Ez{}sO|HUuHmj@uhHbOyAla@kisAdelC|aMf~w@egO|uaAahfBr{|@w_@sAozkCcwFsp@v]__w@`hjFjf@bdCkaJhmzAiyXtzb@fJ |{@{p[|~yErtBdacE{x^vkvHrZfuKo[tpBfxSrcuBocGpi_AqhCvjb@wgAvfsDhyc@fkrD~mD~bkDayD~ywCsui@vjmEoyBpk|AiOhHrvEdueApda@huoA|v[zuhFsySvwaAvbD`wqHxXpwDYj@riJULheEfXh^tdAj~I`^gI`hAkEY~@ kHseBlGyC^kA)/auto/500x300?access_token=TOKEN

地图(耶!)

这不起作用...

点 1 = -87.321536,36.584454

点 2 = -85.855218,37.690038

折线 = }kh~Ez{}sO|HUtCurC}xCkhC}~BqvIuc_@o~l@oaI}aUrs@kkL}~Iso\qHoyGsiKa TpQcRdlGusK_DEiz@w^cwOakJurAizT{hCugF_bBenSsOclZkdCw]mgEwyDogLgfBatEubCmkGxa@icLe_Do_Spf@cw]}sEgOaDgT{[zFyIk~Bts@

地图 API 请求 = https://api.mapbox.com/styles/v1/mapbox/streets-v11/static/pin-s-a+9ed4bd(-87.321536,36.584454),pin-s-b+000(-85.855218 ,37.690038),path-5+f44-0.5(}kh~Ez{}sO|HUtCurC}xCkhC}~BqvIuc_@o~l@oaI}aUrs@kkL}~Iso\qHoyGsiKa`TpQcRdlGusK_DEiz@w^cwOakJurAizT{hCugF_bBenSs` OclZkdCw]mgEwyDogLgfBatEubCmkGxa@icLe_Do_Spf@cw]}sEgOaDgT{[zFyIk~Bts@)/auto/500x300?access_token=TOKEN

没有地图:-(

这是一个更大项目的一小部分,我正在自动化生成项目报告的过程,但问题不在于我的 jQuery/AJAX 代码。这是我的 API 和/或 Mapbox 的问题。如果有更好/更快/更简单的方法来获取这些地图,那么我绝对愿意接受建议,因为这似乎不是最有效的方法。我将从计算机生成这些报告。我不担心电话应用程序的带宽或缩减。只要我每次都能始终如一地生成地图,该文件就可以随心所欲地繁琐。