HTMLcopy
1
<div id="container"></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
// generate data
3
var rawData = [];
4
for (var x = -180; x < 180; x++) {
5
rawData.push([
6
x,
7
-12.6 * (1 - Math.cos((x * 1.14) / 180)),
8
-12.6 * (1 - Math.cos((x * 2.14) / 180)),
9
-12.6 * (1 - Math.cos((x * 3.14) / 180))
10
]);
11
}
12
13
// create a data set
14
var series = anychart.data.mapAsTable(rawData, 'area');
15
16
// create polar chart
17
var chart = anychart.polar();
18
19
// set chart title
20
chart.title('Microphones Sensitivity Polar Pattern');
21
22
// add series
23
chart.defaultSeriesType('area');
24
chart.addSeries(series[0], series[1], series[2]);
25
26
// set series names
27
chart.getSeries(0).name('SMM58');
28
chart.getSeries(1).name('NTT1A');
29
chart.getSeries(2).name('sE4400a IV');
30
31
// set chart yScale settings
32
chart.yScale().ticks().interval(5);
33
chart.yScale().minimum(-25).maximum(0);
34
chart.startAngle(180);
35
36
// set chart xScale settings
37
chart.xScale().minimum(-180).maximum(180);
38
chart.xScale().ticks().interval(30);
39
40
// set xAxis formatting settings
41
chart
42
.xAxis()
43
.labels()
44
.format(function () {
45
return Math.abs(this.value) + '\xb0';
46
});
47
48
// enabled y-grid and create palette for grid rows
49
chart.yGrid().palette(['lightgray 0.3', 'white 0.9']);
50
51
// set legend settings
52
chart.legend().enabled(true).position('center-bottom');
53
54
// set container id for the chart
55
chart.container('container');
56
// initiate chart drawing
57
chart.draw();
58
});