.net输出仪表盘图表(基于highcharts)
来源:互联网 发布:荷兰语翻译软件 编辑:程序博客网 时间:2024/05/21 18:31
首先引用highcharts的主脚本,此处略。
以下为封装的代码:
/// <summary> /// 生成仪表盘脚本 /// </summary> /// <param name="jzcode">机组编号</param> /// <param name="data">指针数据</param> /// <param name="jzname">机组名称</param> /// <param name="title">仪表标题</param> /// <param name="unit">单位</param> /// <param name="min">仪表最小值</param> /// <param name="max">机组最大值</param> /// <param name="isneed">是否要波动</param> /// <returns></returns> public static string GetDashboard(string jzcode, decimal data, string jzname, string title = "发电煤耗", string unit = " g/kWh", int min = 0, int max = 350,bool isneed=true) { StringBuilder sb = new StringBuilder(); sb.Append("$('#jz" + jzcode + "').highcharts({\r\n"); sb.Append("chart: {\r\n"); sb.Append("type: 'gauge',"); sb.Append("plotBackgroundColor: null,\r\n"); sb.Append("plotBackgroundImage: null,\r\n"); sb.Append("plotBorderWidth: 0,\r\n"); sb.Append("plotShadow: false\r\n"); sb.Append("},\r\n"); sb.Append("credits: { enabled: false },\r\n"); sb.Append("exporting: { enabled: false },\r\n"); sb.Append("title: {\r\n"); sb.Append("text: '" + jzname + "'\r\n"); sb.Append("},\r\n"); sb.Append("pane: {\r\n"); sb.Append("startAngle: -150,\r\n"); sb.Append("endAngle: 150,\r\n"); sb.Append("background: [{\r\n"); sb.Append("backgroundColor: {\r\n"); sb.Append("linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n"); sb.Append("stops: [\r\n"); sb.Append("[0, '#FFF'],\r\n"); sb.Append("[1, '#333']\r\n"); sb.Append("]\r\n"); sb.Append("},\r\n"); sb.Append("borderWidth: 0,\r\n"); sb.Append("outerRadius: '109%'\r\n"); sb.Append("}, {\r\n"); sb.Append("backgroundColor: {\r\n"); sb.Append("linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n"); sb.Append("stops: [\r\n"); sb.Append("[0, '#333'],\r\n"); sb.Append("[1, '#FFF']\r\n"); sb.Append("]\r\n"); sb.Append("},\r\n"); sb.Append("borderWidth: 1,\r\n"); sb.Append("outerRadius: '107%'\r\n"); sb.Append("}, {\r\n"); sb.Append("}, {\r\n"); sb.Append("backgroundColor: '#DDD',\r\n"); sb.Append("borderWidth: 0,\r\n"); sb.Append("outerRadius: '105%',\r\n"); sb.Append("innerRadius: '103%'\r\n"); sb.Append("}]\r\n"); sb.Append("},\r\n"); sb.Append("yAxis: {\r\n"); sb.Append("min: " + min + ",\r\n"); sb.Append("max: " + max + ",\r\n"); sb.Append("minorTickInterval: 'auto',\r\n"); sb.Append("minorTickWidth: 1,\r\n"); sb.Append("minorTickLength: 10,\r\n"); sb.Append("minorTickPosition: 'inside',\r\n"); sb.Append("minorTickColor: '#666',\r\n"); sb.Append("tickPixelInterval: 30,\r\n"); sb.Append("tickWidth: 2,\r\n"); sb.Append("tickPosition: 'inside',\r\n"); sb.Append("tickLength: 10,\r\n"); sb.Append("tickColor: '#666',\r\n"); sb.Append("labels: {\r\n"); sb.Append(" step: 2,\r\n"); sb.Append(" rotation: 'auto'\r\n"); sb.Append("},\r\n"); sb.Append("title: {\r\n"); sb.Append(" text: '" + title + "'\r\n"); sb.Append("},\r\n"); sb.Append("plotBands: [{\r\n"); sb.Append(" from: 0,\r\n"); sb.Append(" to: 300,\r\n"); sb.Append(" color: '#55BF3B' // green\r\n"); sb.Append("}, {\r\n"); sb.Append(" from: 300,\r\n"); sb.Append(" to: 330,\r\n"); sb.Append(" color: '#DDDF0D' // yellow\r\n"); sb.Append("}, {\r\n"); sb.Append(" from: 330,\r\n"); sb.Append(" to: 350,\r\n"); sb.Append(" color: '#DF5353' // red\r\n"); sb.Append("}]\r\n"); sb.Append("},\r\n"); sb.Append("series: [{\r\n"); sb.Append(" name: '" + jzname + "',\r\n"); sb.Append(" data: [" + Math.Round(data,2) + "],\r\n"); sb.Append(" tooltip: {\r\n"); sb.Append(" valueSuffix: ' " + unit + "'\r\n"); sb.Append(" }\r\n"); sb.Append("}]\r\n"); sb.Append("}\r\n"); if (isneed) { sb.Append(",function (chart) {\r\n"); sb.Append(" if (!chart.renderer.forExport) {\r\n"); sb.Append(" setInterval(function () {\r\n"); sb.Append(" var point = chart.series[0].points[0],\r\n"); sb.Append(" newVal,\r\n"); sb.Append(" inc = Math.round((Math.random() - 0.5) * 5);\r\n"); sb.Append(" newVal = point.y + inc;\r\n"); sb.Append(" if (newVal < min || newVal > max) {\r\n"); sb.Append(" newVal = point.y - inc;\r\n"); sb.Append(" }\r\n"); sb.Append(" if(point.y>0)"); sb.Append(" point.update(newVal);\r\n"); sb.Append(" }, 3000);\r\n"); sb.Append(" }}\r\n"); } sb.Append(" );\r\n"); return sb.ToString(); }
0 0
- .net输出仪表盘图表(基于highcharts)
- 基于Highcharts的图表绘制
- .net后台输出渐变饼图(基于highcharts)
- .net输出分组比较的柱形图(基于highcharts)
- .net输出相互独立的多个柱状图(基于highcharts)
- 基于highcharts的图表实时更新
- ASP.NET动态绑定HighCharts图表控件
- Highcharts仪表盘制作
- highcharts仪表盘(1)
- highcharts之仪表盘clock
- Highcharts 制作仪表盘 gauge
- HighCharts图表
- 基于one2team框架的Highcharts图表图片导出方案
- Highcharts 基于web的纯javascript图表库
- 在ASP.NET中使用Highcharts js图表
- 在ASP.NET中使用Highcharts js图表
- ASP.NET中动态获取数据使用Highcharts图表控件
- 在ASP.NET中使用Highcharts js图表
- Android 之开发环境使用笔记
- 用Jquery获取checkbox多个选项 (转载)
- JavaScript 控制只能输入数字
- ora-01536:超出表空间“users"的空间限额
- 25个必须记住的SSH命令
- .net输出仪表盘图表(基于highcharts)
- 微信支付调用JSAPI缺少参数:timeStamp
- android中用Gson解析json全解析
- hibernate中对于数据库的Text注解出现 No Dialect mapping for JDBC type: -1解决方法
- springMVC文件上传下载-实例1
- Objective-C:一些要注意的细节
- 如何定位Android NDK开发中遇到的错误
- Android开源SlidingMenu的使用
- 非常好的遗传算法例子