Я создал карту с cartodb, которая показывает соединение поезда между городами. Для этого я создал две базы данных: первая (города) содержит информацию о городах, маршруте, порядке. Например, город: Гамбург маршрут: 1 заказ: 1, город: lübeck маршрут: 1 заказ: 2. Во второй базе данных (verbindungen) я сделал линию между городами с тем же номером маршрута. На моей карте я добавил каждую базу данных в качестве слоя. Когда я загружаю карту, отображаются только города. Теперь я хочу, чтобы можно было щелкнуть по одному городу, и только подключение из этого города должно быть показано.Cartodb показать маршрут по клиенту
Это мой код до сих пор:
var sql = new cartodb.SQL({ user: 'docu', format: 'geojson' });
function showFeature(route) {
sql.execute("select*from verbindungen where route = {{route}}", {route: route}).done(function(geojson) {
if (route) {
map.removeLayer(route);
}
route = L.geoJson(geojson, {
style: {
color: "#000",
opacity: 0.65
}
}).addTo(map);
});
}
cartodb.createLayer(map, layerUrl)
.addTo(map)
.on('done', function(layer) {
layer.setInteraction(true);
var sublayerVerbindungen = layer.getSubLayer(1);
sublayerVerbindungen.hide()
var sublayerCities = layer.getSubLayer(0);
sublayerCities.show();
sublayerTerminals.on('featureClick', function(e, latlng, pos, data) {
showFeature(data.route)
});
})
.on('error', function() {
//log the error
});
Я попытался использовать этот пример: http://bl.ocks.org/javisantana/d20063afd2c96a733002