var imageLink = 'https://cdn.anychart.com/images/italy/';
anychart.onDocumentReady(function () {
var citiesData = getCitiesData();
var sightsData = getSightsData();
var container = document.getElementById('container');
'<h1>Top 30 Places to Visit in Italy<br/><span class="text">According to ' +
'<a target="_blank" href="https://www.tripadvisor.com/Attractions-g187768-Activities-Italy.html">Tripadvisor.com</a><br/>' +
'(Pictures and description were taken from <a target="_blank" href="https://wikipedia.org">Wikipedia.org</a>)</span></h1>' +
'<div class="line"><div id="map-container"></div></div>';
var showSightData = function (index, seriesIndex) {
var itemData = sightsData[seriesIndex].sights[index];
.getElementById('tooltip-image')
.setAttribute('src', imageLink + itemData.id + '.jpg');
.getElementById('tooltip-image')
.setAttribute('alt', itemData.name);
document.getElementById('tooltip-title').innerText = itemData.name;
document.getElementById('tooltip-number').innerText = itemData.id;
document.getElementById('tooltip-rating').innerText =
document.getElementById('tooltip-reviews').innerText =
document.getElementById('tooltip-description').innerText =
var map = anychart.map();
map.padding(10, 0, 20, 0);
map.geoData('anychart.maps.italy');
map.unboundRegions().enabled(true).fill('#E1E1E1').stroke('#D2D2D2');
var createSightSeries = function (data, type, name) {
.data(anychart.data.set(data))
map.tooltip().title(false).separator(false);
var cities = map.marker(anychart.data.set(citiesData));
return this.getData('name');
cities.size(0).selectionMode('none').tooltip(false).legendItem(false);
cities.hovered().size(0);
map.legend().enabled(true).padding(0, 0, 20, 0);
map.listen('pointsHover', function (evt) {
if (!evt.currentPoint.hovered) return;
if (evt.currentPoint.series !== cities) {
evt.currentPoint.series.getIndex()
map.tooltip().onTitleChanged(function () {
this.contentElement.innerHTML = document.querySelector(
var zoomController = anychart.ui.zoom();
zoomController.render(map);
map.getSeries(0).select(0);
map.container('map-container');