音量表(VU Meter)
以下实例演示了音量表(VU Meter)。
我们在前面的章节已经了解了 Highcharts 基本配置语法。接下来让我们来看下其他的配置。
配置
chart.type 配置
配置 chart 的 type 为 ''gauge'' 。chart.type 描述了图表类型。默认值为 "line"。
var chart = { type: ''gauge'' };
w^3^x^u^e.com提供本在线速查手册,请勿盗用!
pane 配置
pane 只适用在极坐标图和角度测量仪。此可配置对象持有组合x轴和y周的常规选项。每个x轴和y轴都可以通过索引关联到窗格中。
var pane = { startAngle: -150, // x轴或测量轴的开始度数,以度数的方式给出。0是北 endAngle: 150 //x轴极坐标或角度轴的最终度数,以度数的方式给出。0是北 };
w^3^x^u^e.com提供本在线速查手册,请勿盗用!
实例
文件名:highcharts_vumeter.htm
<html> <head> <meta charset="UTF-8" /> <title>Highcharts 教程 | W3xue教程(w3xue.com)</title> <script src="/js/jquery-2.1.4.min.js"></script> <script src="/js/hc/highcharts5.0.6.js"></script> <script src="http://code.highcharts.com/highcharts-more.js"></script> </head> <body> <div id="container" style="width: 550px; height: 400px; margin: 0 auto"></div> <script language="JavaScript"> $(document).ready(function() { var chart = { type: ''gauge'', plotBorderWidth: 1, plotBackgroundColor: { linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 }, stops: [ [0, ''#FFF4C6''], [0.3, ''#FFFFFF''], [1, ''#FFF4C6''] ] }, plotBackgroundImage: null, height: 200 }; var credits = { enabled: false }; var title = { text: ''音量表(VU Meter)'' }; var pane = [{ startAngle: -45, endAngle: 45, background: null, center: [''25%'', ''145%''], size: 300 }, { startAngle: -45, endAngle: 45, background: null, center: [''75%'', ''145%''], size: 300 }]; var yAxis = [{ min: -20, max: 6, minorTickPosition: ''outside'', tickPosition: ''outside'', labels: { rotation: ''auto'', distance: 20 }, plotBands: [{ from: 0, to: 6, color: ''#C02316'', innerRadius: ''100%'', outerRadius: ''105%'' }], pane: 0, title: { text: ''VU<br/><span style="font-size:8px">Channel A</span>'', y: -40 } }, { min: -20, max: 6, minorTickPosition: ''outside'', tickPosition: ''outside'', labels: { rotation: ''auto'', distance: 20 }, plotBands: [{ from: 0, to: 6, color: ''#C02316'', innerRadius: ''100%'', outerRadius: ''105%'' }], pane: 1, title: { text: ''VU<br/><span style="font-size:8px">Channel B</span>'', y: -40 } }]; var plotOptions = { gauge: { dataLabels: { enabled: false }, dial: { radius: ''100%'' } } }; var series= [{ data: [-20], yAxis: 0 }, { data: [-20], yAxis: 1 }]; var json = {}; json.chart = chart; json.credits = credits; json.title = title; json.pane = pane; json.yAxis = yAxis; json.plotOptions = plotOptions; json.series = series; // Add some life var chartFunction = function (chart) { setInterval(function () { if (chart.series) { // the chart may be destroyed var left = chart.series[0].points[0], right = chart.series[1].points[0], leftVal, rightVal, inc = (Math.random() - 0.5) * 3; leftVal = left.y + inc; rightVal = leftVal + inc / 3; if (leftVal < -20 || leftVal > 6) { leftVal = left.y - inc; } if (rightVal < -20 || rightVal > 6) { rightVal = leftVal; } left.update(leftVal, false); right.update(rightVal, false); chart.redraw(); } }, 500); }; $(''#container'').highcharts(json, chartFunction); }); </script> </body> </html>
w^3^x^u^e.com提供本在线速查手册,请勿盗用!
以上实例输出结果为: