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
// create the data
4
var data = [
5
{
6
name: "World", value: 115, children: [
7
{
8
name: "Europe", value: 87, children: [
9
{
10
name: "England", value: 53, children: [
11
{ name: "Alec Guinness", value: 1 },
12
{ name: "Ben Kingsley", value: 1 },
13
{ name: "Charles Laughton", value: 2 },
14
{ name: "Colin Firth", value: 1 },
15
{ name: "Daniel Day-Lewis", value: 3 },
16
{ name: "Daniel Kaluuya", value: 1 },
17
{ name: "David Niven", value: 1 },
18
{ name: "Donald Crisp", value: 1 },
19
{ name: "Eddie Redmayne", value: 1 },
20
{ name: "Edmund Gwenn", value: 1 },
21
{ name: "Elizabeth Taylor", value: 2 },
22
{ name: "Emma Thompson", value: 1 },
23
{ name: "Gary Oldman", value: 1 },
24
{ name: "George Arliss", value: 2 },
25
{ name: "Glenda Jackson", value: 2 },
26
{ name: "Greer Garson", value: 1 },
27
{ name: "Helen Mirren", value: 1 },
28
{ name: "Jeremy Irons", value: 1 },
29
{ name: "Jessica Tandy", value: 1 },
30
{ name: "Jim Broadbent", value: 1 },
31
{ name: "John Gielgud", value: 1 },
32
{ name: "John Mills", value: 1 },
33
{ name: "Judi Dench", value: 1 },
34
{ name: "Julie Andrews", value: 1 },
35
{ name: "Kate Winslet", value: 1 },
36
{ name: "Laurence Olivier", value: 1 },
37
{ name: "Maggie Smith", value: 3 },
38
{ name: "Margaret Rutherford", value: 1 },
39
{ name: "Mark Rylance", value: 1 },
40
{ name: "Michael Caine", value: 2 },
41
{ name: "Olivia Colman", value: 1 },
42
{ name: "Paul Scofield", value: 1 },
43
{ name: "Peggy Ashcroft", value: 1 },
44
{ name: "Peter Finch", value: 1 },
45
{ name: "Peter Ustinov", value: 2 },
46
{ name: "Rachel Weisz", value: 1 },
47
{ name: "Rex Harrison", value: 1 },
48
{ name: "Robert Donat", value: 1 },
49
{ name: "Ronald Colman", value: 1 },
50
{ name: "Tilda Swinton", value: 1 },
51
{ name: "Vanessa Redgrave", value: 1 },
52
{ name: "Victor McLaglen", value: 1 },
53
{ name: "Wendy Hiller", value: 1 }
54
]
55
},
56
{
57
name: "Austria", value: 3, children: [
58
{ name: "Christoph Waltz", value: 1 },
59
{ name: "Joseph Schildkraut", value: 1 },
60
{ name: "Maximillian Schell", value: 1 }
61
]
62
},
63
{
64
name: "Wales", value: 6, children: [
65
{ name: "Ray Milland", value: 1 },
66
{ name: "Hugh Griffith", value: 1 },
67
{ name: "Catherine Zeta-Jones", value: 2 },
68
{ name: "Anthony Hopkins", value: 2 }
69
]
70
},
71
{
72
name: "France", value: 4, children: [
73
{ name: "Claudette Colbert", value: 1 },
74
{ name: "Jean Dujardin", value: 1 },
75
{ name: "Juliette Binoche", value: 1 },
76
{ name: "Marion Cotillard", value: 1 }
77
]
78
},
79
{
80
name: "Italy", value: 3, children: [
81
{ name: "Anna Magnani", value: 1 },
82
{ name: "Roberto Benigni", value: 1 },
83
{ name: "Sophia Loren", value: 1 }
84
]
85
},
86
{
87
name: "Russia", value: 3, children: [
88
{ name: "George Sanders", value: 1 },
89
{ name: "Lila Kedrova", value: 1 },
90
{ name: "Yul Brynner", value: 1 }
91
]
92
},
93
{
94
name: "Germany", value: 2, children: [
95
{ name: "Luise Rainier", value: 1 },
96
{ name: "Simone Signoret", value: 1 }
97
]
98
},
99
{
100
name: "Ireland", value: 2, children: [
101
{ name: "Barry Fitzgerald", value: 1 },
102
{ name: "Brenda Flicker", value: 1 }
103
]
104
},
105
{
106
name: "Spain", value: 2, children: [
107
{ name: "Javier Bardem", value: 1 },
108
{ name: "Penélope Cruz", value: 1 }
109
]
110
},
111
{
112
name: "Sweden", value: 2, children: [
113
{ name: "Alicia Vikander", value: 1 },
114
{ name: "Ingrid Bergman", value: 1 }
115
]
116
},
117
{
118
name: "Belgium", value: 1, children: [
119
{ name: "Audrey Hepburn", value: 1 }
120
]
121
},
122
{
123
name: "Greece", value: 1, children: [
124
{ name: "Katina Paxinou", value: 1 }
125
]
126
},
127
{
128
name: "Hungary", value: 1, children: [
129
{ name: "Paul Lukas", value: 1 }
130
]
131
},
132
{
133
name: "Romania", value: 1, children: [
134
{ name: "John Houseman", value: 1 }
135
]
136
},
137
{
138
name: "Scotland", value: 1, children: [
139
{ name: "Sean Connery", value: 1 }
140
]
141
},
142
{
143
name: "Switzerland", value: 1, children: [
144
{ name: "Emil Jannings", value: 1 }
145
]
146
},
147
{
148
name: "Ukraine", value: 1, children: [
149
{ name: "Paul Muni", value: 1 }
150
]
151
}
152
]
153
},
154
{
155
name: "America", value: 14, children: [
156
{
157
name: "Canada", value: 11, children: [
158
{ name: "Anna Paquin", value: 1 },
159
{ name: "Christopher Plumme", value: 2 },
160
{ name: "Harold Russell", value: 1 },
161
{ name: "Marie Dressler", value: 2 },
162
{ name: "Mary Pickford", value: 2 },
163
{ name: "Norma Shearer", value: 2 },
164
{ name: "Walter Huston", value: 1 }
165
]
166
},
167
{
168
name: "Mexico", value: 3, children: [
169
{ name: "Anthony Quinn", value: 2 },
170
{ name: "Lupita Nyong’o", value: 1 }
171
]
172
}
173
]
174
},
175
{
176
name: "Asia", value: 10, children: [
177
{
178
name: "Japan", value: 4, children: [
179
{ name: "Joan Fontaine", value: 1 },
180
{ name: "Miyoshi Umeki", value: 1 },
181
{ name: "Olivia de Havilland", value: 2 }
182
]
183
},
184
{
185
name: "India", value: 2, children: [
186
{ name: "Julie Christie", value: 1 },
187
{ name: "Vivien Leigh", value: 1 }
188
]
189
},
190
{
191
name: "Cambodia", value: 1, children: [
192
{ name: "Haing S. Ngor", value: 1 }
193
]
194
},
195
{
196
name: "Israel", value: 1, children: [
197
{ name: "Natalie Portman", value: 1 }
198
]
199
},
200
{
201
name: "Malaysia", value: 1, children: [
202
{ name: "Michelle Yeoh", value: 1 }
203
]
204
},
205
{
206
name: "South Korea", value: 1, children: [
207
{ name: "Youn Yuh-jung", value: 1 }
208
]
209
}
210
]
211
},
212
{
213
name: "Oceania", value: 3, children: [
214
{
215
name: "Australia", value: 2, children: [
216
{ name: "Geoffrey Rush", value: 1 },
217
{ name: "Heath Ledger", value: 1 }
218
]
219
},
220
{
221
name: "New Zealand", value: 1, children: [
222
{ name: "Russell Crowe", value: 1 }
223
]
224
}
225
]
226
},
227
{
228
name: "Africa", value: 1, children: [
229
{
230
name: "South Africa", value: 1, children: [
231
{ name: "Charlize Theron", value: 1 }
232
]
233
}
234
]
235
}
236
]
237
}
238
];
239
240
// create a sunburst chart and set the data
241
var chart = anychart.sunburst(data, "as-tree");
242
243
// set the chart title
244
chart.title("Non-U.S. Born Oscar Winners for Acting");
245
246
// format the tooltip
247
chart.tooltip().useHtml(true);
248
chart.tooltip().format("<h5 style='font-size:14px; font-weight:400; margin: 0.25rem 0;'>{%name}</h5><h5 style='font-size:12px; font-weight:400; margin: 0.25rem 0;'>Total Oscars: {%value}</h5");
249
250
// set a custom palette
251
chart.palette(['#345E80', '#00838F', '#00BFA5', '#ff6e40', '#d4e157', '#64B5F6']);
252
253
// set the parent-dependent calculation mode
254
chart.calculationMode("parent-dependent");
255
256
// create and configure a label for the center content
257
let label = anychart.standalones.label();
258
label.text("Non-U.S. born");
259
label.width("100%");
260
label.height("100%");
261
label.fontColor("#64B5F6");
262
label.fontSize(12);
263
label.fontWeight(600);
264
label.hAlign("center");
265
label.vAlign("middle");
266
// set the center content
267
chart.center().content(label);
268
// set a space for the center content
269
chart.innerRadius(50);
270
// hide the world level
271
chart.level(0).thickness("0%");
272
273
// configure the label format
274
chart.labels().format("{%name}");
275
276
// apply the radial position
277
chart.level(2).labels().position("radial");
278
279
// set the ascending order
280
chart.sort("asc");
281
282
// set the container id
283
chart.container("container");
284
285
// initiate drawing the chart
286
chart.draw();
287
288
});