HTMLcopy
1
<div id="container"></div>
CSScopy
6
1
html, body, #container {
2
width: 100%;
3
height: 100%;
4
margin: 0;
5
padding: 0;
6
}
JavaScriptcopy
x
1
anychart.onDocumentReady(function () {
2
3
// This sample uses 3rd party proj4 component
4
// that makes it possible to set coordinates
5
// for the points and labels on the map and
6
// required for custom projections and grid labels formatting.
7
// See https://docs.anychart.com/7.14.3/Maps/Map_Projections
8
9
// define the map
10
var usaMap = anychart.map();
11
12
// set the data for the USA map
13
usaDataSet = anychart.data.set([
14
{"id": "US.TX", "value": 26956958, "url": "https://cdn.anychart.com/geodata/1.2.0/usa_states/texas/texas.json"},
15
{"id": "US.FL", "value": 19552860, "url": "https://cdn.anychart.com/geodata/1.2.0/usa_states/florida/florida.json"}
16
]);
17
18
// create data set for Texas districts
19
dataSetTX = anychart.data.set([
20
{'id': 'US.TX.111', 'value': 6222}, //Dallam
21
{'id': 'US.TX.421', 'value': 3186}, //Sherman
22
{'id': 'US.TX.195', 'value': 5369}, //hansford
23
{'id': 'US.TX.357', 'value': 9006}, //Ochiltree
24
{'id': 'US.TX.295', 'value': 3057}, //Lipscomb
25
{'id': 'US.TX.205', 'value': 5537}, //Hartley
26
{'id': 'US.TX.341', 'value': 20121}, //Moore
27
{'id': 'US.TX.233', 'value': 23857}, //hatchinson
28
{'id': 'US.TX.393', 'value': 887}, //roberts
29
{'id': 'US.TX.211', 'value': 3351}, //Hemphill
30
{'id': 'US.TX.359', 'value': 2185}, //Oldham
31
{'id': 'US.TX.375', 'value': 113546}, //Potter
32
{'id': 'US.TX.065', 'value': 6516}, //Carson
33
{'id': 'US.TX.179', 'value': 22744}, //Gray
34
{'id': 'US.TX.483', 'value': 5284}, //Wheeler
35
{'id': 'US.TX.117', 'value': 18561}, //Deaf Smith
36
{'id': 'US.TX.381', 'value': 104312}, //Randall
37
{'id': 'US.TX.011', 'value': 2148}, //Armstrong
38
{'id': 'US.TX.129', 'value': 3828}, //Donley
39
{'id': 'US.TX.087', 'value': 3206}, //Collingsworth
40
{'id': 'US.TX.369', 'value': 10016}, // Parmer
41
{'id': 'US.TX.069', 'value': 8285}, //Castro
42
{'id': 'US.TX.437', 'value': 8378}, //Swisher
43
{'id': 'US.TX.045', 'value': 1790}, //Briscoe
44
{'id': 'US.TX.191', 'value': 3782}, //Hall
45
{'id': 'US.TX.075', 'value': 7688}, //Childress
46
]);
47
48
// create data set for Florida districts
49
dataSetFL = anychart.data.set([
50
{'id': 'US.FL.063', 'value': 46755}, //Jackson]
51
{'id': 'US.FL.091', 'value': 170498}, //Okaloosa
52
{'id': 'US.FL.077', 'value': 7021}, //Liberty County
53
{'id': 'US.FL.079', 'value': 18733}, //Madison
54
{'id': 'US.FL.039', 'value': 45087}, //Gadsden
55
{'id': 'US.FL.067', 'value': 7022}, //Lafayette
56
{'id': 'US.FL.123', 'value': 19256}, //Taylor
57
{'id': 'US.FL.113', 'value': 117743}, //Santa Rosa
58
{'id': 'US.FL.029', 'value': 13827}, //Dixie
59
{'id': 'US.FL.037', 'value': 11057}, //Franklin
60
{'id': 'US.FL.131', 'value': 40601}, //Walton
61
{'id': 'US.FL.129', 'value': 22863}, //Wakulla
62
{'id': 'US.FL.005', 'value': 159238}, //Bay
63
{'id': 'US.FL.075', 'value': 34450}, //Levy
64
{'id': 'US.FL.083', 'value': 258916}, //Marion
65
{'id': 'US.FL.121', 'value': 34844}, //Suwannee
66
{'id': 'US.FL.065', 'value': 12902}, //Jefferson
67
{'id': 'US.FL.023', 'value': 56513}, //Columbia
68
{'id': 'US.FL.003', 'value': 22259}, //Baker
69
{'id': 'US.FL.073', 'value': 239452}, //Leon
70
{'id': 'US.FL.033', 'value': 294210}, //Escambia
71
{'id': 'US.FL.041', 'value': 14437}, //Gilchrist
72
{'id': 'US.FL.047', 'value': 13327}, //Hamilton
73
{'id': 'US.FL.013', 'value': 13017}, //Calhoun
74
{'id': 'US.FL.125', 'value': 13442}, //Union
75
{'id': 'US.FL.059', 'value': 18564}, //Holmes
76
{'id': 'US.FL.133', 'value': 20973}, //Washington
77
]);
78
79
// a dataset array for setting the series inside the states
80
dataSets = {
81
"US.TX": dataSetTX,
82
"US.FL": dataSetFL
83
}
84
85
// set the geodata
86
usaMap.geoData(anychart.maps.united_states_of_america);
87
// set the series
88
usaSeries = usaMap.choropleth(usaDataSet);
89
90
// draw the USA map
91
usaMap.container("container");
92
93
// load the map using AJAX
94
usaSeries.listen("pointClick", function(e) {
95
loadMap(e.point.get("id"), e.point.get("url"), usaMap);
96
});
97
98
usaMap.draw();
99
});
100
101
function loadMap(id, url, map){
102
jQuery.ajax({
103
type: "GET",
104
url: url,
105
dataType: "json",
106
success: function(data) {
107
// create a map to load
108
var drillMap = anychart.map();
109
// put the data into the map
110
drillMap.geoData(data);
111
// perform a drill down into the drillMap
112
map.drillTo(id, drillMap);
113
var drillMapSeries = drillMap.choropleth(dataSets[id]);
114
},
115
error: function(){
116
alert('Error: ', data);
117
}
118
});
119
}