마커 클러스터
마커 클러스터는 여러개의 마커가 중첩될때 마커의 개수를 카운트 해줍니다.
$(function () {
var map = new routo.maps.Map("map", {
center: { lat: 37.650718, lng: 126.975209 }, // 지도 초기 위치
zoom: 10, // 지도 로딩 시 최초 표시 레벨
});
var labels = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
var labelsLen = labels.length;
var randomRange = [126.7, 37.4, 127.4, 37.8];
var locations = [];
// ramdom한 위치 생성
for (var idx = 0; idx < labelsLen; idx++) {
var randomPosition = {};
randomPosition.lat = randomRange[1] + (randomRange[3] - randomRange[1]) * Math.random();
randomPosition.lng = randomRange[0] + (randomRange[2] - randomRange[0]) * Math.random();
randomPosition.label = labels[idx];
locations.push(randomPosition);
}
// 마커 목록 생성
var markers = locations.map((location, locationIdx) => {
return new routo.maps.Marker({
position: location,
label: { text: location.label },
});
});
// 마커 클러스터 생성
var markerClusterer = new routo.maps.MarkerClusterer({
markers: markers,
map: map,
});
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>마커 클러스터</title>
<style>
html,
body {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
}
.map {
width: 100%;
height: 400px;
position: relative;
}</style>
</head>
<body>
<h2>마커 클러스터</h2>
<hr />
<p>
마커 클러스터는 여러개의 마커가 중첩될때 마커의 개수를 카운트 해줍니다.
</p>
<div id="map" class="map"></div>
</body>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="https://api.routo.com/v2/maps/map?key=12290cd4-7094-43e8-a936-8819196d0332&callback=initMap"></script>
<script>
$(function () {
var map = new routo.maps.Map("map", {
center: { lat: 37.650718, lng: 126.975209 }, // 지도 초기 위치
zoom: 10, // 지도 로딩 시 최초 표시 레벨
});
var labels = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
var labelsLen = labels.length;
var randomRange = [126.7, 37.4, 127.4, 37.8];
var locations = [];
// ramdom한 위치 생성
for (var idx = 0; idx < labelsLen; idx++) {
var randomPosition = {};
randomPosition.lat = randomRange[1] + (randomRange[3] - randomRange[1]) * Math.random();
randomPosition.lng = randomRange[0] + (randomRange[2] - randomRange[0]) * Math.random();
randomPosition.label = labels[idx];
locations.push(randomPosition);
}
// 마커 목록 생성
var markers = locations.map((location, locationIdx) => {
return new routo.maps.Marker({
position: location,
label: { text: location.label },
});
});
// 마커 클러스터 생성
var markerClusterer = new routo.maps.MarkerClusterer({
markers: markers,
map: map,
});
});</script>
</html>