Javascript Gmaps API-许多带有图标和;移动设备上的标签加载速度慢
我正在使用显示多个标记(数千个)。如果我不向标记添加自定义标签和图标(几秒钟),加载这些标记效果很好,但是当我向标记添加自定义标签和图标时,它们在手机上的加载速度非常慢(在Android上大约25秒)。我创建了一个代码笔来说明这个问题:在这个代码笔中,随机生成了5000个标记。当你打开这个密码笔时,它在电脑上的加载速度很快,但在手机上的加载速度很慢。我使用以下代码创建每个标记:Javascript Gmaps API-许多带有图标和;移动设备上的标签加载速度慢,javascript,android,google-maps,google-maps-api-3,google-maps-markers,Javascript,Android,Google Maps,Google Maps Api 3,Google Maps Markers,我正在使用显示多个标记(数千个)。如果我不向标记添加自定义标签和图标(几秒钟),加载这些标记效果很好,但是当我向标记添加自定义标签和图标时,它们在手机上的加载速度非常慢(在Android上大约25秒)。我创建了一个代码笔来说明这个问题:在这个代码笔中,随机生成了5000个标记。当你打开这个密码笔时,它在电脑上的加载速度很快,但在手机上的加载速度很慢。我使用以下代码创建每个标记: var marker = new google.maps.Marker({ position: myLatLn
var marker = new google.maps.Marker({
position: myLatLng,
label: {
color: '#000000',
fontWeight: 'bold',
text: 'text',
},
icon: {
labelOrigin: new google.maps.Point(24, 14),
url: 'http://reistip.nl/assets/img/gmap/icon/emoticons/icongreenbigprice.png',
size: new google.maps.Size(50, 60),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(11, 40),
},
});
如果我将上面的代码替换为下面的代码(没有自定义标签和图标的标记),则可以正常加载:
var marker = new google.maps.Marker({
position: myLatLng,
title: 'Hello World!'
});
如何在手机上快速加载具有自定义标签和图标的标记?您有两个选项:群集和距离
- 聚类:将数据与一些算法一起聚类,当用户放大和缩小时,只显示一个或全部聚类的一个点
- 距离:使用空间算法(如KD树),以便仅快速选择地图当前中心附近的标记
步骤3:在谷歌地图上加载图层(WMS)谢谢你的建议。实际上,我已经在使用集群库(markerclustererplus)对标记进行集群。在手机上显示5000个标记实际上可以,只要我不在标记上添加自定义标签/图标。你或者其他人知道为什么在标记上添加标签/图标会对移动电话上标记的加载速度产生如此显著的影响吗?你应该发布你的代码。如果你使用UI线程执行加载位图等繁重的处理,通常会发生这种情况。是的,我创建了一个代码笔:这说明了问题,有没有优化代码以缩短手机上标记加载时间的技巧?