<!DOCTYPE html>
<html>
<head>
<title>Leaflet Map with CSV Markers</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="https://unpkg.com/leaflet/dist/leaflet.css"/>
<script src="https://unpkg.com/leaflet/dist/leaflet.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/PapaParse/5.3.0/papaparse.min.js"></script>
</head>
<body>
<div id="mymap" style="width: 100%; height: 600px;"></div>
<script>
// 地図を作成し、初期表示位置とズームレベルを設定
var mymap = L.map('mymap').setView([38.893257, 139.8187444], 13);
// OpenStreetMapのタイルレイヤーを追加
L.tileLayer(
'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
{ attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors' }
).addTo(mymap);
// CSVファイルを読み込み、マーカーを追加
Papa.parse('markers.csv', {
download: true,
header: true,
complete: function(results) {
results.data.forEach(function(row) {
var lat = parseFloat(row.lat);
var lng = parseFloat(row.lng);
var name = row.name;
L.marker([lat, lng]).addTo(mymap).bindPopup(name);
});
}
});
</script>
</body>
</html>