HTMLcopy
1
<div id="container">
2
</div>
CSScopy
8
1
html,
2
body,
3
#container {
4
width: 100%;
5
height: 100%;
6
margin: 0;
7
padding: 0;
8
}
JavaScriptcopy
x
1
anychart.onDocumentReady(function () {
2
// The data used in this sample can be obtained from the CDN
3
// https://cdn.anychart.com/samples/sparkline-charts/line-chart/data.js
4
// prepare the data for charts
5
var argentinaNominal = getArgentinaNominalData(); // eslint-disable-line no-undef
6
var australiaNominal = getAustraliaNominalData(); // eslint-disable-line no-undef
7
var austriaNominal = getAustriaNominalData(); // eslint-disable-line no-undef
8
var belgiumNominal = getBelgiumNominalData(); // eslint-disable-line no-undef
9
var brazilNominal = getBrazilNominalData(); // eslint-disable-line no-undef
10
var bulgariaNominal = getBulgariaNominalData(); // eslint-disable-line no-undef
11
var canadaNominal = getCanadaNominalData(); // eslint-disable-line no-undef
12
var chileNominal = getChileNominalData(); // eslint-disable-line no-undef
13
var chinaNominal = getChinaNominalData(); // eslint-disable-line no-undef
14
var croatiaNominal = getCroatiaNominalData(); // eslint-disable-line no-undef
15
var czechNominal = getCzechNominal(); // eslint-disable-line no-undef
16
var denmarkNominal = getDenmarkNominalData(); // eslint-disable-line no-undef
17
var estoniaNominal = getEstoniaNominalData(); // eslint-disable-line no-undef
18
var euroareaNominal = getEuroareaNominalData(); // eslint-disable-line no-undef
19
var finlandNominal = getFinlandNominalData(); // eslint-disable-line no-undef
20
var franceNominal = getFranceNominalData(); // eslint-disable-line no-undef
21
var germanyNominal = getGermanyNominalData(); // eslint-disable-line no-undef
22
var greeceNominal = getGreeceNominalData(); // eslint-disable-line no-undef
23
24
var argentinaReal = getArgentinaRealData(); // eslint-disable-line no-undef
25
var australiaReal = getAustraliaRealData(); // eslint-disable-line no-undef
26
var austriaReal = getAustriaRealData(); // eslint-disable-line no-undef
27
var belgiumReal = getBelgiumRealData(); // eslint-disable-line no-undef
28
var brazilReal = getBrazilRealData(); // eslint-disable-line no-undef
29
var bulgariaReal = getBulgariaRealData(); // eslint-disable-line no-undef
30
var canadaReal = getCanadaRealData(); // eslint-disable-line no-undef
31
var chileReal = getChileRealData(); // eslint-disable-line no-undef
32
var chinaReal = getChinaRealData(); // eslint-disable-line no-undef
33
var croatiaReal = getCroatiaRealData(); // eslint-disable-line no-undef
34
var czechReal = getCzechRealData(); // eslint-disable-line no-undef
35
var denmarkReal = getDenmarkRealData(); // eslint-disable-line no-undef
36
var estoniaReal = getEstoniaRealData(); // eslint-disable-line no-undef
37
var euroareaReal = getEuroareaRealData(); // eslint-disable-line no-undef
38
var finlandReal = getFinlandRealData(); // eslint-disable-line no-undef
39
var franceReal = getFranceRealData(); // eslint-disable-line no-undef
40
var germanyReal = getGermanyRealData(); // eslint-disable-line no-undef
41
var greeceReal = getGreeceRealData(); // eslint-disable-line no-undef
42
43
// create table, this table provide layout for the sparkline charts
44
var table = anychart.standalones.table();
45
// set table size settings
46
table.bounds('5%', '20px', '90%', '90%');
47
// set table contents (sparkline charts and text)
48
table.contents([
49
[
50
null,
51
'Nominal Exchange Rate',
52
null,
53
null,
54
'Real Exchange Rate',
55
null,
56
null
57
],
58
[
59
'Country',
60
'Jan 94',
61
'148 Months',
62
'Apr 06',
63
'Jan 94',
64
'148 Months',
65
'Apr 06'
66
],
67
[
68
'Argentina',
69
first(argentinaNominal),
70
createSparkline(argentinaNominal).minMarkers(true).maxMarkers(true),
71
last(argentinaNominal),
72
first(argentinaReal),
73
createSparkline(argentinaReal),
74
last(argentinaReal)
75
],
76
[
77
'Australia',
78
first(australiaNominal),
79
createSparkline(australiaNominal),
80
last(australiaNominal),
81
first(australiaReal),
82
createSparkline(australiaReal),
83
last(australiaReal)
84
],
85
[
86
'Austria',
87
first(austriaNominal),
88
createSparkline(austriaNominal),
89
last(austriaNominal),
90
first(austriaReal),
91
createSparkline(austriaReal),
92
last(austriaReal)
93
],
94
[
95
'Belgium',
96
first(belgiumNominal),
97
createSparkline(belgiumNominal),
98
last(belgiumNominal),
99
first(belgiumReal),
100
createSparkline(belgiumReal),
101
last(belgiumReal)
102
],
103
[
104
'Brazil',
105
first(brazilNominal),
106
createSparkline(brazilNominal),
107
last(brazilNominal),
108
first(brazilReal),
109
createSparkline(brazilReal),
110
last(brazilReal)
111
],
112
[
113
'Bulgaria',
114
first(bulgariaNominal),
115
createSparkline(bulgariaNominal),
116
last(bulgariaNominal),
117
first(bulgariaReal),
118
createSparkline(bulgariaReal),
119
last(bulgariaReal)
120
],
121
[
122
'Canada',
123
first(canadaNominal),
124
createSparkline(canadaNominal),
125
last(canadaNominal),
126
first(canadaReal),
127
createSparkline(canadaReal),
128
last(canadaReal)
129
],
130
[
131
'Chile',
132
first(chileNominal),
133
createSparkline(chileNominal),
134
last(chileNominal),
135
first(chileReal),
136
createSparkline(chileReal),
137
last(chileReal)
138
],
139
[
140
'China',
141
first(chinaNominal),
142
createSparkline(chinaNominal),
143
last(chinaNominal),
144
first(chinaReal),
145
createSparkline(chinaReal),
146
last(chinaReal)
147
],
148
[
149
'Croatia',
150
first(croatiaNominal),
151
createSparkline(croatiaNominal),
152
last(croatiaNominal),
153
first(croatiaReal),
154
createSparkline(croatiaReal),
155
last(croatiaReal)
156
],
157
[
158
'Czech republic',
159
first(czechNominal),
160
createSparkline(czechNominal),
161
last(czechNominal),
162
first(czechReal),
163
createSparkline(czechReal),
164
last(czechReal)
165
],
166
[
167
'Denmark',
168
first(denmarkNominal),
169
createSparkline(denmarkNominal),
170
last(denmarkNominal),
171
first(denmarkReal),
172
createSparkline(denmarkReal),
173
last(denmarkReal)
174
],
175
[
176
'Estonia',
177
first(estoniaNominal),
178
createSparkline(estoniaNominal),
179
last(estoniaNominal),
180
first(estoniaReal),
181
createSparkline(estoniaReal),
182
last(estoniaReal)
183
],
184
[
185
'Euro area',
186
first(euroareaNominal),
187
createSparkline(euroareaNominal),
188
last(euroareaNominal),
189
first(euroareaReal),
190
createSparkline(euroareaReal),
191
last(euroareaReal)
192
],
193
[
194
'Finland',
195
first(finlandNominal),
196
createSparkline(finlandNominal),
197
last(finlandNominal),
198
first(finlandReal),
199
createSparkline(finlandReal),
200
last(finlandReal)
201
],
202
[
203
'France',
204
first(franceNominal),
205
createSparkline(franceNominal),
206
last(franceNominal),
207
first(franceReal),
208
createSparkline(franceReal),
209
last(franceReal)
210
],
211
[
212
'Germany',
213
first(germanyNominal),
214
createSparkline(germanyNominal),
215
last(germanyNominal),
216
first(germanyReal),
217
createSparkline(germanyReal),
218
last(germanyReal)
219
],
220
[
221
'Greece',
222
first(greeceNominal),
223
createSparkline(greeceNominal),
224
last(greeceNominal),
225
first(greeceReal),
226
createSparkline(greeceReal),
227
last(greeceReal)
228
]
229
]);
230
231
// set of colors and fonts used in this demo
232
var fontFamilyText = '\'Verdana\', Helvetica, Arial, sans-serif';
233
var smallHeaderFontColor = '#212121';
234
var contentFontColor = '#7c868e';
235
var countryFontColor = '#7c868e';
236
var borderColor = '#EAEAEA';
237
238
// disable borders for all cells in the table
239
table.cellBorder(null);
240
// set dashed bottom border for all cells in the table
241
table
242
.cellBorder()
243
.bottom({ color: borderColor, thickness: 1, dash: '1 1 1' });
244
245
// set text settings for all table cells
246
table
247
.vAlign('middle')
248
.fontFamily(fontFamilyText)
249
.hAlign('center')
250
.fontSize('11px');
251
252
// set cells span
253
table.getCell(0, 1).colSpan(3);
254
table.getCell(0, 4).colSpan(3);
255
256
// set fixed height for the first rows
257
table.getRow(0).height(40);
258
table.getRow(1).height(20);
259
260
// set fixed width for some of the tables columns
261
table.getCol(0).width(100);
262
table.getCol(1).width(60);
263
table.getCol(3).width(60);
264
table.getCol(4).width(60);
265
table.getCol(6).width(60);
266
267
// set main header text and border settings
268
var mainHeaderRow = table.getRow(0);
269
mainHeaderRow
270
.fontColor(contentFontColor)
271
.fontSize('14px')
272
.hAlign('center');
273
mainHeaderRow.cellBorder().bottom('none');
274
275
// set secondary header text and border settings
276
var secondaryHeader = table.getRow(1);
277
secondaryHeader.fontColor(smallHeaderFontColor).fontSize('12px');
278
secondaryHeader.cellBorder().bottom(borderColor);
279
280
// set text settings for columns
281
var firstColumn = table.getCol(0);
282
firstColumn.fontColor(countryFontColor).hAlign('left');
283
284
// set container id for the table
285
table.container('container');
286
// draw the table and all elements it contains
287
// (you don't need to call the draw method for internal tables and charts)
288
table.draw();
289
});
290
291
/**
292
* Helper function, creates sparkline chart with Line type using anychart.sparkline method,
293
* sets passed data and visual preference.
294
* @param {Array} array Sparkline data.
295
* @return {anychart.charts.Sparkline} New sparkline chart with passed data.
296
*/
297
function createSparkline(array) {
298
return anychart
299
.sparkline()
300
.data(array)
301
.seriesType('line')
302
.padding(5)
303
.stroke('1.2 #64b5f6')
304
.maxMarkers(true)
305
.minMarkers(true);
306
}
307
308
/**
309
* Helper function, returns first value of array.
310
* @param {Array} array
311
* @return {number}
312
*/
313
function first(array) {
314
return array[0];
315
}
316
317
/**
318
* Helper function, returns last value of array.
319
* @param {Array} array
320
* @return {number}
321
*/
322
function last(array) {
323
return array[array.length - 1];
324
}