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
var chart = anychart.vertical();
3
4
chart.title("Extra Axes Units Comparison Sample");
5
6
chart.xGrid(true);
7
8
// additional axes settings
9
var kelvinScale = anychart.scales.linear();
10
kelvinScale.minimum(0);
11
kelvinScale.maximum(2000);
12
kelvinScale.ticks().interval(500);
13
14
var fahrenheitScale = anychart.scales.linear();
15
fahrenheitScale.minimum((kelvinScale.minimum() - 273.15)*1.8 + 32);
16
fahrenheitScale.maximum((kelvinScale.maximum() - 273.15)*1.8 + 32);
17
fahrenheitScale.ticks().interval(500);
18
19
var celsiusScale = anychart.scales.linear();
20
celsiusScale.minimum(kelvinScale.minimum() - 273.15);
21
celsiusScale.maximum(kelvinScale.maximum() - 273.15);
22
celsiusScale.ticks().interval(500);
23
24
var yAxis = chart.yAxis();
25
yAxis.scale(fahrenheitScale);
26
yAxis.ticks(true);
27
yAxis.drawFirstLabel(false);
28
yAxis.drawLastLabel(false);
29
yAxis.title("Fahrenheit");
30
31
// adjusting axes
32
var yAxis1 = chart.yAxis(1);
33
yAxis1.title("Celsius");
34
yAxis1.orientation("top");
35
yAxis1.ticks(true);
36
yAxis1.drawFirstLabel(false);
37
yAxis1.drawLastLabel(false);
38
yAxis1.scale(celsiusScale);
39
40
var yAxis2 = chart.yAxis(2);
41
yAxis2.scale(kelvinScale);
42
yAxis2.ticks(true);
43
yAxis2.orientation("top");
44
yAxis2.title("Kelvin");
45
46
47
// setting data
48
var data = [
49
["Absolute Zero", 0],
50
["Lowest recorded surface temperature on Earth", 184],
51
["Celsius / Fahrenheit's 'cross-over' temperature", 233.15],
52
["Ice melts", 273.15],
53
["Average human body temperature", 309.95],
54
["Highest recorded surface temperature on Earth", 331],
55
["Water boils", 373.1339],
56
["Titanium melts", 1941]
57
];
58
59
// setting and adjusting data visualisation
60
var markerSeries = chart.marker(data);
61
markerSeries.clip(false);
62
markerSeries.zIndex(chart.xAxis().zIndex()+1);
63
markerSeries.tooltip().format(function() {
64
return "Kelvin: "+ this.value.toFixed(2) +
65
"\nCelsius: "+ (this.value - 273.15).toFixed(2) +
66
"\nFahrenheit: " + ((this.value - 273.15)*1.8000 + 32).toFixed(2);
67
});
68
markerSeries.yScale(kelvinScale);
69
markerSeries.size(5);
70
markerSeries.hovered().size(7);
71
72
var lineMarker = chart.lineMarker();
73
lineMarker.stroke("#FF0000");
74
lineMarker.scale(celsiusScale);
75
76
var lineMarker1 = chart.lineMarker(1);
77
lineMarker1.stroke("#00AA00");
78
lineMarker1.scale(fahrenheitScale);
79
80
chart.container("container");
81
chart.draw();
82
});