apdata.js 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372
  1. var chartfc;
  2. var chartgf;
  3. var optionsfc;
  4. var optionsgf;
  5. Highcharts.setOptions({
  6. global : {
  7. useUTC : false
  8. }
  9. });
  10. optionsfc = {
  11. colors: [
  12. '#00B259', //绿
  13. '#B20000', //红
  14. '#006DD9', //蓝
  15. '#000000', //黑
  16. '#FFBFFF',//藕荷色
  17. '#CC9900',//黄褐色
  18. '#FF8000'//橘黄
  19. ],
  20. chart: {
  21. renderTo: 'chartfc',
  22. type: 'spline',
  23. //backgroundColor:'#BFDFFF',
  24. //plotBackgroundColor:'#BFDFFF',
  25. zoomType: 'x',
  26. events: {
  27. }
  28. },
  29. title: {
  30. text: '风电实时功率'
  31. },
  32. subtitle: {
  33. text: ''
  34. },
  35. xAxis: {
  36. labels: {
  37. align: 'center',
  38. formatter: function() {
  39. return Highcharts.dateFormat('%H<br/>%M', this.value);
  40. }
  41. },
  42. type: 'datetime'
  43. },
  44. yAxis: [{
  45. title: {
  46. text: '功率数值(MW)'
  47. }
  48. },{
  49. title:{
  50. text :'风速(m/s)'
  51. },
  52. labels:{
  53. formatter: function(){
  54. return this.value;
  55. }
  56. },
  57. lineWidth : 1,
  58. opposite:true
  59. }],
  60. legend: {
  61. layout: 'vertical',
  62. // backgroundColor: '#FFFFFF',
  63. align: 'right',
  64. verticalAlign: 'top',
  65. floating: true
  66. // shadow: true
  67. // layout: 'vertical',
  68. // align: 'right',
  69. // verticalAlign: 'middle',
  70. // borderWidth: 0
  71. },
  72. tooltip: {
  73. crosshairs:{//控制十字线
  74. width:2
  75. },
  76. shared:true,
  77. xDateFormat:'%Y-%m-%d %H:%M'
  78. /*formatter: function() {
  79. return '<b>'+ this.series.name +'</b>:'+
  80. Highcharts.numberFormat(this.y, 2) +' 万kW<br/>时间:'+
  81. Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', this.x);
  82. }*/
  83. },
  84. credits: {
  85. enabled: false
  86. },
  87. plotOptions: {
  88. spline: {
  89. dataLabels : {
  90. enabled :false
  91. },
  92. // pointPadding: 0.2,
  93. borderWidth: 0
  94. },
  95. series: {
  96. cursor: 'pointer',
  97. marker: {
  98. radius: 0,
  99. symbol: 'circle' //曲线点类型:"circle", "square", "diamond", "triangle","triangle-down",默认是"circle"
  100. }
  101. }
  102. },
  103. series: [{
  104. type: 'spline',
  105. name: '应发功率(单位:MW)',
  106. yAxis:0
  107. },
  108. {
  109. type: 'spline',
  110. name: '实发功率(单位:MW)',
  111. yAxis:0
  112. },
  113. {
  114. type: 'spline',
  115. name: '理论功率(单位:MW)',
  116. yAxis:0
  117. },
  118. {
  119. type: 'spline',
  120. name: '预测功率(单位:MW)',
  121. yAxis:0
  122. },
  123. {
  124. type: 'spline',
  125. name: '保证功率(单位:MW)',
  126. yAxis:0
  127. },
  128. {
  129. type: 'spline',
  130. name: '最优功率(单位:MW)',
  131. yAxis:0
  132. },{
  133. type: 'spline',
  134. name: '平均风速',
  135. yAxis:1
  136. }]
  137. };
  138. optionsgf = {
  139. colors: [
  140. '#00B259', //绿
  141. '#B20000', //红
  142. '#000000', //黑
  143. '#FF8000'//橘黄
  144. ],
  145. chart: {
  146. renderTo: 'chartgf',
  147. type: 'spline',
  148. //backgroundColor:'#BFDFFF',
  149. //plotBackgroundColor:'#BFDFFF',
  150. zoomType: 'x',
  151. events: {
  152. }
  153. },
  154. title: {
  155. text: '光伏实时功率'
  156. },
  157. subtitle: {
  158. text: ''
  159. },
  160. xAxis: {
  161. labels: {
  162. align: 'center',
  163. formatter: function() {
  164. return Highcharts.dateFormat('%H<br/>%M', this.value);
  165. }
  166. },
  167. type: 'datetime'
  168. },
  169. yAxis: [{
  170. title: {
  171. text: '功率数值(MW)'
  172. }
  173. },{
  174. title:{
  175. text :'日照强度'
  176. },
  177. labels:{
  178. formatter: function(){
  179. return this.value;
  180. }
  181. },
  182. lineWidth : 1,
  183. opposite:true
  184. }],
  185. legend: {
  186. layout: 'vertical',
  187. // backgroundColor: '#FFFFFF',
  188. align: 'right',
  189. verticalAlign: 'top',
  190. floating: true
  191. // shadow: true
  192. // layout: 'vertical',
  193. // align: 'right',
  194. // verticalAlign: 'middle',
  195. // borderWidth: 0
  196. },
  197. tooltip: {
  198. crosshairs:{//控制十字线
  199. width:2
  200. },
  201. shared:true,
  202. xDateFormat:'%Y-%m-%d %H:%M'
  203. /*formatter: function() {
  204. return '<b>'+ this.series.name +'</b>:'+
  205. Highcharts.numberFormat(this.y, 2) +' 万kW<br/>时间:'+
  206. Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', this.x);
  207. }*/
  208. },
  209. credits: {
  210. enabled: false
  211. },
  212. plotOptions: {
  213. spline: {
  214. dataLabels : {
  215. enabled :false
  216. },
  217. // pointPadding: 0.2,
  218. borderWidth: 0
  219. },
  220. series: {
  221. cursor: 'pointer',
  222. marker: {
  223. radius: 0,
  224. symbol: 'circle' //曲线点类型:"circle", "square", "diamond", "triangle","triangle-down",默认是"circle"
  225. }
  226. }
  227. },
  228. series: [{
  229. type: 'spline',
  230. name: '应发功率(单位:MW)',
  231. yAxis:0
  232. },
  233. {
  234. type: 'spline',
  235. name: '实发功率(单位:MW)',
  236. yAxis:0
  237. },
  238. {
  239. type: 'spline',
  240. name: '预测功率(单位:MW)',
  241. yAxis:0
  242. },
  243. {
  244. type: 'spline',
  245. name: '日照强度',
  246. yAxis:1
  247. }]
  248. };
  249. $(document).ready(
  250. function(){
  251. chartfc=new Highcharts.Chart(optionsfc);
  252. chartgf=new Highcharts.Chart(optionsgf);
  253. realfc();
  254. realgf();
  255. window.setInterval(realfc,60000);
  256. window.setInterval(realgf,80000);
  257. }
  258. );
  259. function realfc(){
  260. var url = "realFcAjax.action";
  261. $.ajax({
  262. url : url,
  263. type : "post",
  264. cache : false,
  265. dataType : "json",
  266. data : {},
  267. ifModified : false,
  268. success : function(result) {
  269. var yfgl = [];
  270. var sjgl = [];
  271. var lvgl = [];
  272. var ycgl = [];
  273. var bzgl = [];
  274. var pjfs = [];
  275. var xtime=[];
  276. var zygl = [];
  277. var index=0;
  278. var count=0;
  279. $.each(result, function(m, obj) {
  280. //if(m == result.length -1){
  281. if(index<obj.value7){
  282. index++;
  283. ycgl.push( parseFloat(obj.value4) );
  284. }
  285. if(count<obj.value8){
  286. yfgl.push( parseFloat(obj.value1) );
  287. sjgl.push( parseFloat(obj.value2) );
  288. lvgl.push( parseFloat(obj.value3) );
  289. bzgl.push( parseFloat(obj.value5) );
  290. pjfs.push( parseFloat(obj.value6) );
  291. zygl.push( parseFloat(obj.value9) );
  292. count++;
  293. }
  294. xtime.push(parseFloat(obj.time));
  295. });
  296. optionsfc.series[0].data = yfgl;
  297. optionsfc.series[1].data = sjgl;
  298. optionsfc.series[2].data = lvgl;
  299. optionsfc.series[3].data = ycgl;
  300. optionsfc.series[4].data = bzgl;
  301. optionsfc.series[6].data = pjfs;
  302. optionsfc.series[5].data = zygl;
  303. optionsfc.xAxis.categories = xtime;
  304. chartfc = new Highcharts.Chart(optionsfc);
  305. }
  306. });
  307. }
  308. function realgf(){
  309. var url = "realGfAjax.action";
  310. $.ajax({
  311. url : url,
  312. type : "post",
  313. cache : false,
  314. dataType : "json",
  315. data : {},
  316. ifModified : false,
  317. success : function(result) {
  318. var yfgl = [];
  319. var sjgl = [];
  320. var lvgl = [];
  321. var ycgl = [];
  322. var bzgl = [];
  323. var pjfs = [];
  324. var xtime=[];
  325. var index=0;
  326. var count=0;
  327. $.each(result, function(m, obj) {
  328. //if(m == result.length -1){
  329. if(index<obj.value7){
  330. index++;
  331. ycgl.push( parseFloat(obj.value4) );
  332. }
  333. if(count<obj.value8){
  334. yfgl.push( parseFloat(obj.value1) );
  335. sjgl.push( parseFloat(obj.value2) );
  336. pjfs.push( parseFloat(obj.value6) );
  337. count++;
  338. }
  339. xtime.push(parseFloat(obj.time));
  340. });
  341. optionsgf.series[0].data = yfgl;
  342. optionsgf.series[1].data = sjgl;
  343. optionsgf.series[2].data = ycgl;
  344. optionsgf.series[3].data = pjfs;
  345. optionsgf.xAxis.categories = xtime;
  346. chartgf = new Highcharts.Chart(optionsgf);
  347. }
  348. });
  349. }