optionBar.xAxis.data = ['03/01', '03/02', '03/03', '03/04', '03/05', '03/06', '03/07'] optionBar.legend.data = ['发电电量', '入网电量'] optionBar.series = [ { name: '发电电量', type: 'bar', data: [50, 28, 35, 18, 36, 27, 19] }, { name: '入网电量', type: 'bar', data: [10, 32, 20, 33, 39, 13, 22] }, ] var mychartSolar = echarts.init(document.getElementById('mychartSolar')) mychartSolar.setOption(optionBar) optionBar.legend.data = ['充电电量', '放电电量'] optionBar.series = [ { name: '充电电量', type: 'bar', data: [50, 28, 35, 18, 36, 27, 19] }, { name: '放电电量', type: 'bar', data: [10, 32, 20, 33, 39, 13, 22] }, ] var mychartStorage = echarts.init(document.getElementById('mychartStorage')) mychartStorage.setOption(optionBar) optionBar.legend.data = ['用电电量', '最大功率'] optionBar.series = [ { name: '用电电量', type: 'bar', data: [50, 28, 35, 18, 36, 27, 19] }, { name: '最大功率', type: 'bar', data: [10, 32, 20, 33, 39, 13, 22] }, ] var mychartLoad = echarts.init(document.getElementById('mychartLoad')) mychartLoad.setOption(optionBar) optionBar.legend.data = ['充电电量', '充电次数', '充电收益'] optionBar.series = [ { name: '充电电量', type: 'bar', data: [50, 28, 35, 18, 36, 27, 19] }, { name: '充电次数', type: 'bar', data: [10, 32, 20, 33, 39, 13, 22] }, { name: '充电收益', type: 'bar', data: [10, 32, 20, 33, 39, 13, 22] }, ] var mychartCharge = echarts.init(document.getElementById('mychartCharge')) mychartCharge.setOption(optionBar) optionBar.legend.data = ['光伏设备', '储能设备', '负荷设备'] optionBar.series = [ { name: '光伏设备', type: 'bar', data: [50, 28, 35, 18, 36, 27, 19] }, { name: '储能设备', type: 'bar', data: [10, 32, 20, 33, 39, 13, 22] }, { name: '负荷设备', type: 'bar', data: [10, 32, 20, 33, 39, 13, 22] }, ] var mychartAlert = echarts.init(document.getElementById('mychartAlert')) mychartAlert.setOption(optionBar) function getRandomCurveData(m, n) { var data = [] var t0 = Date.parse('2025-03-01 00:00:00') var step = 600 var N = 86400 / step var y = 500 for (var i = 0; i <= N; ++i) { var t = t0 + i * step * 1000 //var y = Math.sin(i * 0.1) * (n - m) + m y = Math.floor((y + RAND(0, 50) - 25) * 100) / 100 data[i] = { name: t, value: [t, y] } } return data } optionCurve.legend.data = ['发电功率', '辐照度'] optionCurve.series = [ { name: '发电功率', type: 'line', hoverAnimation: false, smooth: false, symbolSize: 0, data: getRandomCurveData(100, 200) }, { name: '辐照度', type: 'line', hoverAnimation: false, smooth: false, symbolSize: 0, data: getRandomCurveData(100, 200) }, ] var mychartRunning = echarts.init(document.getElementById('mychartRunning')) mychartRunning.setOption(optionCurve) window.onresize = () => { mychartSolar.resize() mychartStorage.resize() mychartLoad.resize() mychartCharge.resize() mychartAlert.resize() mychartRunning.resize() } function updatePageData() { // 获取统计数据(累计统计) G.cppNative.getStatisticTotal().then((res => { // {"ccers":100,"elect_charge":0,"elect_gen":153.8,"elect_in":130.2,"income_charge":100,"income_elect":100} $('#windTurbineNum').text('8') $('#solarNum').text('207') $('#electricTotal').text(res['elect_gen']) $('#electricInTotal').text(res['elect_in']) $('#carbonReduction').text(res['ccers']) })) // 获取统计数据(日统计,7天的数据) G.cppNative.getStatisticDay(7).then((res => { var xAxisData = [] var solar = { d1: [], d2: [], d3: [] } var storage = { d1: [], d2: [], d3: [] } var load = { d1: [], d2: [], d3: [] } var charge = { d1: [], d2: [], d3: [] } res.forEach(item => { solar.d1.push(item['elect_gen_solar']) solar.d2.push(item['elect_in_solar']) storage.d1.push(item['elect_store']) storage.d2.push(item['elect_discharge']) load.d1.push(item['elect_load']) load.d2.push(item['elect_load']) charge.d1.push(item['elect_charge']) charge.d2.push(item['num_charge']) }) // 服务端获取光伏设备7天统计数据,更新图表 // var data1 = [1, 2, 3, 4, 3, 2, 1] // var data2 = [1, 2, 3, 4, 3, 2, 1] // var data3 = [1, 2, 3, 4, 3, 2, 1] mychartSolar.setOption({ series: [{ data: solar.d1 }, { data: solar.d2 }, { data: solar.d3 }] }); mychartStorage.setOption({ series: [{ data: storage.d1 }, { data: storage.d2 }, { data: storage.d3 }] }); mychartLoad.setOption({ series: [{ data: load.d1 }, { data: load.d2 }, { data: load.d3 }] }); mychartCharge.setOption({ series: [{ data: charge.d1 }, { data: charge.d2 }, { data: charge.d3 }] }); mychartAlert.setOption({ series: [{ data: solar.d1 }, { data: solar.d2 }, { data: solar.d3 }] }); })) // 查询数据获取环境信息:光照、风速、环境温度、湿度 G.cppNative.getEnvironmentInfo().then(res => { $('#envIllumination').text(res['illumination'] + ' Lux') $('#envWindspeed').text(res['windspeed'] + ' m/s') $('#envTemperture').text(res['temperature'] + ' ℃') $('#envHumidity').text(res['humidity'] + ' %') }) } /// 清理资源 var timerId = null document.currentScript.addEventListener('DOMNodeRemoved', () => { G.cppNative.log('DOMNodeRemoved: 运行监控') clearInterval(timerId); }); $(document).ready(function () { updatePageData() // 定时器更新页面数据 timerId = setInterval(updatePageData, 1000) })