Solid gauge
const gaugeOptions = { chart: { type: 'solidgauge' }, title: null, pane: { center: ['50%', '85%'], size: '140%', startAngle: -90, endAngle: 90, background: { backgroundColor: Highcharts.defaultOptions.legend.backgroundColor || '#fafafa', borderRadius: 5, innerRadius: '60%', outerRadius: '100%', shape: 'arc' } }, exporting: { enabled: false }, tooltip: { enabled: false }, // the value axis yAxis: { stops: [ [0.1, '#55BF3B'], // green [0.5, '#DDDF0D'], // yellow [0.9, '#DF5353'] // red ], lineWidth: 0, tickWidth: 0, minorTickInterval: null, tickAmount: 2, title: { y: -70 }, labels: { y: 16 } }, plotOptions: { solidgauge: { borderRadius: 3, dataLabels: { y: 5, borderWidth: 0, useHTML: true } } } }; // The speed gauge const chartSpeed = Highcharts.chart( 'container-speed', Highcharts.merge(gaugeOptions, { yAxis: { min: 0, max: 200, title: { text: 'Speed' } }, credits: { enabled: false }, series: [{ name: 'Speed', data: [80], dataLabels: { format: '<div style="text-align:center">' + '<span style="font-size:25px">{y}</span><br/>' + '<span style="font-size:12px;opacity:0.4">km/h</span>' + '</div>' }, tooltip: { valueSuffix: ' km/h' } }] })); // The RPM gauge const chartRpm = Highcharts.chart( 'container-rpm', Highcharts.merge(gaugeOptions, { yAxis: { min: 0, max: 5, title: { text: 'RPM' } }, series: [{ name: 'RPM', data: [1], dataLabels: { format: '<div style="text-align:center">' + '<span style="font-size:25px">{y:.1f}</span><br/>' + '<span style="font-size:12px;opacity:0.4">' + '* 1000 / min' + '</span>' + '</div>' }, tooltip: { valueSuffix: ' revolutions/min' } }] })); // Bring life to the dials setInterval(function () { // Speed let point, newVal, inc; if (chartSpeed) { point = chartSpeed.series[0].points[0]; inc = Math.round((Math.random() - 0.5) * 100); newVal = point.y + inc; if (newVal < 0 || newVal > 200) { newVal = point.y - inc; } point.update(newVal); } // RPM if (chartRpm) { point = chartRpm.series[0].points[0]; inc = Math.random() - 0.5; newVal = point.y + inc; if (newVal < 0 || newVal > 5) { newVal = point.y - inc; } point.update(newVal); } }, 2000);
CoreGauges
Install with NPM
The official Highcharts NPM package comes with support for CommonJS and contains Highcharts, and its Stock, Maps and Gantt packages.
npm install highcharts --save
See more installation optionsDownload our library
The zip archive contains Javascript files and examples. Unzip the zip package and open index.html in your browser to see the examples.
DownloadBuy a license
You can download and try out all Highcharts products for free. Once your project/product is ready for launch, purchase a commercial license.
See License Pricing