123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379 |
- /*
- 电气火灾数据对接
- */
- //建筑下拉
- getNameList();
- function getNameList(queryParam = {}) {
- ajaxRequest(GET_NAME_LIST_DATA, "POST", queryParam, function(result) {
- let data = result.RESULT;
- let items = '';
- data.forEach(function(item, key) {
- items += `<option value="${item.owner_id}">${item.owner_name}</option>`
- })
- $('#building').html(items);
- }, function(errorMsg) {
- // alert("请求数据失败!");
- }, 2)
- };
- //日期筛选
- layui.use('laydate', function() {
- var laydate = layui.laydate;
- ///年月选择器
- laydate.render({
- elem: '#chooseTime',
- type: 'month',
- max: -30, //7天后
- trigger: 'click', //呼出事件改成click
- done: function(value, date, endDate) {
- setTimeout(function() {
- getListData(getSearchParamObj());
- }, 100)
- }
- });
- });
- //建筑筛选
- $("#building").change(function() {
- setTimeout(function() {
- getListData(getSearchParamObj());
- }, 100)
- });
- // 数据请求传参
- getListData(getSearchParamObj());
- function getListData(queryParam = {}) {
- ajaxRequest(ELE_FIRE_DATA, "POST", queryParam, function(result) {
- if (result.totalCount != 0) {
- /*
- 主页面数据对接 start
- */
- //数据统计
- var data_statistics = result.RESULT[0].data_statistics;
- $('.total').html(data_statistics.alarm_number);
- $('.solved').html(data_statistics.processing_number);
- $('.unsolve').html(data_statistics.unprocessed_number);
- // 环状饼图定制 (数据统计计算)
- (function() {
- // 实例化对象
- var myChart = echarts.init(document.querySelector(".bar-3d .chart"));
- // 生成扇形的曲面参数方程,用于 series-surface.parametricEquation
- function getParametricEquation(startRatio, endRatio, isSelected, isHovered, k, height) {
- // 计算
- let midRatio = (startRatio + endRatio) / 2;
- let startRadian = startRatio * Math.PI * 2;
- let endRadian = endRatio * Math.PI * 2;
- let midRadian = midRatio * Math.PI * 2;
- // 如果只有一个扇形,则不实现选中效果。
- if (startRatio === 0 && endRatio === 1) {
- isSelected = false;
- }
- // 通过扇形内径/外径的值,换算出辅助参数 k(默认值 1/3)
- k = typeof k !== 'undefined' ? k : 1 / 3;
- // 计算选中效果分别在 x 轴、y 轴方向上的位移(未选中,则位移均为 0)
- let offsetX = isSelected ? Math.cos(midRadian) * 0.1 : 0;
- let offsetY = isSelected ? Math.sin(midRadian) * 0.1 : 0;
- // 计算高亮效果的放大比例(未高亮,则比例为 1)
- let hoverRate = isHovered ? 1.05 : 1;
- // 返回曲面参数方程
- return {
- u: {
- min: -Math.PI,
- max: Math.PI * 3,
- step: Math.PI / 32
- },
- v: {
- min: 0,
- max: Math.PI * 2,
- step: Math.PI / 20
- },
- x: function(u, v) {
- if (u < startRadian) {
- return offsetX + Math.cos(startRadian) * (1 + Math.cos(v) * k) * hoverRate;
- }
- if (u > endRadian) {
- return offsetX + Math.cos(endRadian) * (1 + Math.cos(v) * k) * hoverRate;
- }
- return offsetX + Math.cos(u) * (1 + Math.cos(v) * k) * hoverRate;
- },
- y: function(u, v) {
- if (u < startRadian) {
- return offsetY + Math.sin(startRadian) * (1 + Math.cos(v) * k) * hoverRate;
- }
- if (u > endRadian) {
- return offsetY + Math.sin(endRadian) * (1 + Math.cos(v) * k) * hoverRate;
- }
- return offsetY + Math.sin(u) * (1 + Math.cos(v) * k) * hoverRate;
- },
- z: function(u, v) {
- if (u < -Math.PI * 0.5) {
- return Math.sin(u);
- }
- if (u > Math.PI * 2.5) {
- return Math.sin(u);
- }
- return Math.sin(v) > 0 ? 1 : -1;
- }
- };
- }
- // 生成模拟 3D 饼图的配置项
- function getPie3D(pieData, internalDiameterRatio) {
- let series = [];
- let sumValue = 0;
- let startValue = 0;
- let endValue = 0;
- let legendData = [];
- let k = typeof internalDiameterRatio !== 'undefined' ? (1 - internalDiameterRatio) / (1 + internalDiameterRatio) : 1 / 3;
- // 为每一个饼图数据,生成一个 series-surface 配置
- for (let i = 0; i < pieData.length; i++) {
- sumValue += pieData[i].value;
- let seriesItem = {
- name: typeof pieData[i].name === 'undefined' ? `series${i}` : pieData[i].name,
- type: 'surface',
- parametric: true,
- wireframe: {
- show: false
- },
- pieData: pieData[i],
- pieStatus: {
- selected: false,
- hovered: false,
- k: k
- }
- };
- if (typeof pieData[i].itemStyle != 'undefined') {
- let itemStyle = {};
- typeof pieData[i].itemStyle.color != 'undefined' ? itemStyle.color = pieData[i].itemStyle.color : null;
- typeof pieData[i].itemStyle.opacity != 'undefined' ? itemStyle.opacity = pieData[i].itemStyle.opacity : null;
- seriesItem.itemStyle = itemStyle;
- }
- series.push(seriesItem);
- }
- // 使用上一次遍历时,计算出的数据和 sumValue,调用 getParametricEquation 函数,
- // 向每个 series-surface 传入不同的参数方程 series-surface.parametricEquation,也就是实现每一个扇形。
- for (let i = 0; i < series.length; i++) {
- endValue = startValue + series[i].pieData.value;
- // console.log(series[i]);
- series[i].pieData.startRatio = startValue / sumValue;
- series[i].pieData.endRatio = endValue / sumValue;
- series[i].parametricEquation = getParametricEquation(series[i].pieData.startRatio, series[i].pieData.endRatio, false, false, k, series[i].pieData.value);
- startValue = endValue;
- legendData.push(series[i].name);
- }
- // 准备待返回的配置项,把准备好的 legendData、series 传入。
- let option = {
- tooltip: {
- backgroundColor: '#12DFE0',
- formatter: params => {
- if (params.seriesName !== 'mouseoutSeries') {
- // return `${params.seriesName}<br/><span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:${params.color};"></span>${option.series[params.seriesIndex].pieData.value}%`;
- return `${params.seriesName}: ${option.series[params.seriesIndex].pieData.value}%`;
- }
- }
- },
- xAxis3D: {
- min: -1,
- max: 1
- },
- yAxis3D: {
- min: -1,
- max: 1
- },
- zAxis3D: {
- min: -1,
- max: 1
- },
- grid3D: {
- show: false,
- boxHeight: 40,
- top: '-10%',
- // bottom: '80%',
- // environment: '../images/3d-bg.png', //aa背景色
- viewControl: {
- distance: 170, //aa距离
- alpha: 21, //aa角度
- beta: 60, //aa角度
- zoomSensitivity: false //是否开启缩放和平移
- },
- },
- series: series
- };
- return option;
- }
- // 传入数据生成 option
- var option = getPie3D([{
- name: '已处理率',
- value: data_statistics.treatment_rate,
- itemStyle: {
- opacity: 0.5,
- color: 'rgba(0,127,244,.8)',
- }
- }, {
- name: '未处理率',
- value: data_statistics.untreated_rate,
- itemStyle: {
- opacity: 0.5,
- color: 'rgba(209,126,23,.8)',
- }
- }
- ], 2);
- // 把配置给实例对象
- myChart.setOption(option);
- window.addEventListener("resize", function() {
- myChart.resize();
- });
- })();
- // 折线图定制 (数据离散率挖掘)
- (function() {
- let dispersion_rate = result.RESULT[0].dispersion_rate;
- // 结论数据渲染
- var items = '';
- var conclusion = dispersion_rate.conclusion
- for (x in conclusion) {
- xIndex = x.substr(x.length - 1, 1);
- items += `<p>${xIndex}、${conclusion[x]}</p>`
- }
- $('.divergence .summaryDetail').html(items);
- // 三相电压
- let a = [];
- let b = [];
- let c = [];
- let d = [];
- let voltage = dispersion_rate.voltage;
- voltage.forEach(function(item, index) {
- a.push(item.variance)
- b.push(item.standard_deviation)
- c.push(item.average_value)
- d.push(item.data_time)
- });
- // 三相电流
- let a2 = [];
- let b2 = [];
- let c2 = [];
- let d2 = [];
- let electric_current = dispersion_rate.electric_current;
- electric_current.forEach(function(item, index) {
- a2.push(item.variance)
- b2.push(item.standard_deviation)
- c2.push(item.average_value)
- d2.push(item.data_time)
- });
- // 三相温度
- let a3 = [];
- let b3 = [];
- let c3 = [];
- let d3 = [];
- let temperature = dispersion_rate.temperature;
- temperature.forEach(function(item, index) {
- a3.push(item.variance)
- b3.push(item.standard_deviation)
- c3.push(item.average_value)
- d3.push(item.data_time)
- });
- // 漏电电流
- let a4 = [];
- let b4 = [];
- let c4 = [];
- let d4 = [];
- let leakage_current = dispersion_rate.leakage_current;
- leakage_current.forEach(function(item, index) {
- a4.push(item.variance)
- b4.push(item.standard_deviation)
- c4.push(item.average_value)
- d4.push(item.data_time)
- });
- var sortData = [{
- sortName: "三相电压",
- data: [a, b, c, d]
- },
- {
- sortName: "三相电流",
- data: [a2, b2, c2, d2]
- },
- {
- sortName: "三相温度",
- data: [a3, b3, c3, d3]
- }, {
- sortName: "漏电电流",
- data: [a4, b4, c4, d4]
- },
- ];
- var xData = function() {
- var data = [];
- for (var i = 1; i < leakage_current.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector(".divergence .chart"));
- // 2.指定配置
- var option = {
- color: [{
- colorStops: [{
- offset: 0,
- color: '#F9860C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#fff' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#07E1F1' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#0456CB' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#11F90C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#3FC713' // 100% 处的颜色
- }],
- }
- ],
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#fff"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "20%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: d,
- axisTick: {
- show: true
- },
- axisLabel: {
- interval: 0,
- show: false,
- // color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- lineStyle: {
- color: 'rgba(255,255,255,.3)'
- }
- },
- splitNumber: 8,
- splitLine: {
- show: false
- },
- splitArea: {
- show: true,
- areaStyle: {
- color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
- }
- }
- },
- yAxis: {
- // scale: true,
- // min: 'dataMin',
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#012f4a" // 分割线颜色
- }
- }
- },
- series: [{
- symbol: "none",
- name: "方差",
- type: "line",
- data: a
- },
- {
- symbol: "none",
- name: "标准差",
- type: "line",
- data: b
- }, {
- symbol: "none",
- name: "平均值",
- type: "line",
- data: c
- }
- ]
- };
- myChart.setOption(option);
- window.addEventListener("resize", function() {
- myChart.resize();
- });
- // 点击切换效果
- $(".divergence .tab-line").on("click", "a", function() {
- $(this).addClass('active').siblings().removeClass('active')
- var obj = sortData[$(this).index()];
- option.series[0].data = obj.data[0];
- option.series[1].data = obj.data[1];
- option.series[2].data = obj.data[2];
- // 重新渲染
- myChart.setOption(option);
- });
- })();
- // 折线图定制 (电老化分析)
- (function() {
- let electrical_aging = result.RESULT[0].electrical_aging;
- // console.log(electrical_aging)
- // 结论数据渲染
- var items = '';
- var conclusion = electrical_aging.conclusion
- for (x in conclusion) {
- xIndex = x.substr(x.length - 1, 1);
- items += `<p>${xIndex}、${conclusion[x]}</p>`
- }
- $('.oldAnalysis .summaryDetail').html(items);
- // 异常设备监控电缆数据
- let a = [];
- let b = [];
- let data_time = [];
- let abnormal_equipment = electrical_aging.abnormal_equipment;
- abnormal_equipment.forEach(function(item, index) {
- a.push(item.electric_current)
- b.push(item.voltage)
- data_time.push(item.data_time)
- });
- // console.log(data_time)
- // 漏电告警数据
- let a2 = [];
- let b2 = [];
- let data_time2 = [];
- let leakage_alarm = electrical_aging.leakage_alarm;
- leakage_alarm.forEach(function(item, index) {
- a2.push(item.electric_current)
- b2.push(item.voltage)
- data_time2.push(item.data_time)
- });
- // console.log(data_time2)
- var sortData = [{
- sortName: "异常设备",
- data: [a, b]
- },
- {
- sortName: "漏电告警",
- data: [a2, b2]
- }
- ];
- var xData = function() {
- var data = [];
- for (var i = 1; i < leakage_alarm.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector(".oldAnalysis .chart"));
- // 2.指定配置
- var option = {
- color: ["#FF9C00", "#0096FF"], // 通过这个color修改两条线的颜色
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- formatter: function(params) {
- if ($('#active').hasClass('active')) {
- var res = params[0].seriesName + ':' + params[0].value + '<br />' + params[1].seriesName + ':' + params[1].value + '<br />时间:' + data_time[params[0].dataIndex];
- } else {
- var res = params[0].seriesName + ':' + params[0].value + '<br />' + params[1].seriesName + ':' + params[1].value + '<br />时间:' + data_time2[params[0].dataIndex];
- }
- return res;
- },
- // formatter: '{a0}: {c0}<br />{a1}: {c1}<br />时间:' + chooseTime + ''
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#fff"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: xData,
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- show: false // 去除轴线
- }
- },
- yAxis: {
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#012f4a" // 分割线颜色
- }
- }
- },
- series: [{
- symbol: "none",
- name: "电流",
- type: "line",
- smooth: true, // true 可以让我们的折线显示带有弧度
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(255,156,0, 0.4)"
- },
- {
- offset: 0.8,
- color: "rgba(255,156,0, 0.3)"
- }
- ],
- false
- ),
- shadowColor: "rgba(0, 0, 0, 0.1)"
- }
- },
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "电压",
- type: "line",
- smooth: true,
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(0,150,255,0.5)"
- },
- {
- offset: 0.8,
- color: "rgba(0,150,255, 0.1)"
- }
- ],
- false
- ),
- shadowColor: "rgba(0, 0, 0, 0.1)"
- }
- },
- data: sortData[0].data[1]
- }
- ]
- };
- myChart.setOption(option);
- window.addEventListener("resize", function() {
- myChart.resize();
- });
- // 点击切换效果
- $(".oldAnalysis .tab-line").on("click", "a", function() {
- $(this).addClass('active').siblings().removeClass('active')
- var obj = sortData[$(this).index()];
- option.series[0].data = obj.data[0];
- option.series[1].data = obj.data[1];
- // 重新渲染
- myChart.setOption(option);
- });
- })();
- // 折线图定制 (热老化分析)
- (function() {
- let thermal_aging = result.RESULT[0].thermal_aging;
- // 结论数据渲染
- var items = '';
- var conclusion = thermal_aging.conclusion
- for (x in conclusion) {
- xIndex = x.substr(x.length - 1, 1);
- items += `<p>${xIndex}、${conclusion[x]}</p>`
- }
- $('.hotAnalysis .summaryDetail').html(items);
- // 热老化
- let a = [];
- let b = [];
- let c = [];
- let data_time = [];
- let visualization = thermal_aging.visualization;
- visualization.forEach(function(item, index) {
- a.push(item.generation_temperature)
- b.push(item.ambient_temperature)
- c.push(item.Cable_temperature)
- data_time.push(item.data_time)
- });
- var sortData = [{
- data: [
- // 三个数组是因为有3条线
- a, b, c
- ]
- }];
- var xData = function() {
- var data = [];
- for (var i = 1; i < visualization.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector(".hotAnalysis .chart"));
- // 2.指定配置
- var option = {
- color: ["#05EEE7", "#9999FF", "#FE92B3"], // 通过这个color修改三条线的颜色
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- // formatter: '{a0}: {c0}°C<br />{a1}: {c1}°C<br />{a2}: {c2}°C<br />时间:' + chooseTime + ''
- formatter: function(params) {
- var res = params[0].seriesName + ':' + params[0].value + '°C<br />' + params[1].seriesName + ':' + params[1].value + '°C<br />' + params[2].seriesName + ':' + params[2].value + '°C<br />时间:' + data_time[params[2].dataIndex];
- return res;
- },
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#fff"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: xData,
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- show: false // 去除轴线
- }
- },
- yAxis: {
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#012f4a" // 分割线颜色
- }
- }
- },
- series: [{
- symbol: "none",
- name: "线缆产生的温度",
- type: "line",
- smooth: true, // true 可以让我们的折线显示带有弧度
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(5,238,231,.6)"
- },
- {
- offset: 0.8,
- color: "rgba(5,238,231, 0.4)"
- }
- ],
- false
- ),
- }
- },
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "环境温度",
- type: "line",
- smooth: true,
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(153,153,255,.6)"
- },
- {
- offset: 0.8,
- color: "rgba(153,153,255, 0.4)"
- }
- ],
- false
- ),
- }
- },
- data: sortData[0].data[1]
- },
- {
- symbol: "none",
- name: "线缆温度",
- type: "line",
- smooth: true,
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(255,147,180,.6)"
- },
- {
- offset: 0.8,
- color: "rgba(255,147,180, 0.4)"
- }
- ],
- false
- ),
- }
- },
- data: sortData[0].data[2]
- }
- ]
- };
- myChart.setOption(option);
- window.addEventListener("resize", function() {
- myChart.resize();
- });
- })();
- /*
- 主页面数据对接 end
- */
- /*
- 导出数据对接 start
- */
- //项目情况
- var project_situation = result.RESULT[0].project_situation;
- var items = '';
- items = `<tr>
- <td>单位名称</td>
- <td colspan="5">${project_situation.company_name}</td>
- </tr>
- <tr>
- <td>进场日期</td>
- <td>${project_situation.entry_date} </td>
- <td>完工日期</td>
- <td>${project_situation.completion_date}</td>
- <td>验收日期</td>
- <td>${project_situation.acceptance_date}</td>
- </tr>`
- $('#project_situation').html(items);
- //设备清单
- var equipment_list = result.RESULT[0].equipment_list;
- var items2 = '';
- if (equipment_list) {
- equipment_list.forEach(function(item, key) {
- items2 += `<tr>
- <td>${item.device_name}</td>
- <td>${item.device_info}</td>
- <td>${item.device_code}</td>
- <td>${item.remarks}</td>
- </tr>`;
- })
- $('#equipment_list').html(items2)
- }
- //统计时段
- var statistical_period = result.RESULT[0].statistical_period;
- var items3 = '';
- items3 = `<div>统计起始日期:${statistical_period.start_date}</div>
- <div>统计截止日期:${statistical_period.closing_date}</div>
- <div>统计时段时长:${statistical_period.duration}</div>`;
- $('#statistical_period').html(items3)
- //数据统计计算
- var data_statistics = result.RESULT[0].data_statistics;
- var items4 = '';
- items4 = `<tr>
- <td>${data_statistics.alarm_number}</td>
- <td>${data_statistics.processing_number}</td>
- <td>${data_statistics.unprocessed_number}</td>
- <td>${data_statistics.treatment_rate}</td>
- <td>${data_statistics.untreated_rate}</td>
- </tr>`;
- $('#data_statistics').html(items4);
- // 数据离散率挖掘
- let dispersion_rate = result.RESULT[0].dispersion_rate;
- // 结论数据渲染
- var items = '';
- var conclusion = dispersion_rate.conclusion
- for (x in conclusion) {
- xIndex = x.substr(x.length - 1, 1);
- items += `<div>${xIndex}、${conclusion[x]}</div>`
- }
- $('.exportBox .divergence .summaryDetail').html(items);
- // 数据离散率挖掘1
- (function() {
- // 三相电压
- let a = [];
- let b = [];
- let c = [];
- let d = [];
- let voltage = dispersion_rate.voltage;
- voltage.forEach(function(item, index) {
- a.push(item.variance)
- b.push(item.standard_deviation)
- c.push(item.average_value)
- d.push(item.data_time)
- });
- var sortData = [{
- sortName: "三相电压",
- data: [
- a, b, c, d
- ]
- }, ];
- // var xData = function() {
- // var data = [];
- // for (var i = 1; i < voltage.length + 1; i++) {
- // data.push(i);
- // }
- // return data;
- // }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector("#divergenceChart1"));
- // 2.指定配置
- var option = {
- color: [{
- colorStops: [{
- offset: 0,
- color: '#F9860C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#fff' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#07E1F1' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#0456CB' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#11F90C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#3FC713' // 100% 处的颜色
- }],
- }
- ],
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#aaa"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: d,
- axisTick: {
- // show: true // 去除刻度线
- },
- axisLabel: {
- interval: 0,
- show: false,
- color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- lineStyle: {
- color: 'rgba(255,255,255,.3)'
- }
- },
- splitLine: {
- show: false
- },
- splitArea: {
- show: true,
- areaStyle: {
- color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
- }
- }
- },
- yAxis: {
- splitNumber: 8,
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#aaa", // 分割线颜色
- opacity: .2
- }
- }
- },
- series: [{
- symbol: "none",
- name: "方差",
- type: "line",
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "标准差",
- type: "line",
- data: sortData[0].data[1]
- }, {
- symbol: "none",
- name: "平均值",
- type: "line",
- data: sortData[0].data[2]
- }
- ]
- };
- myChart.setOption(option);
- //echarts赋值到src
- var img1 = document.getElementById('divergenceChart1_img');
- setTimeout(function() {
- img1.src = myChart.getDataURL();
- }, 1000)
- })();
- // 数据离散率挖掘2
- (function() {
- // 三相电流
- let a2 = [];
- let b2 = [];
- let c2 = [];
- let d2 = [];
- let electric_current = dispersion_rate.electric_current;
- electric_current.forEach(function(item, index) {
- a2.push(item.variance)
- b2.push(item.standard_deviation)
- c2.push(item.average_value)
- d2.push(item.data_time)
- });
- var sortData = [{
- sortName: "三相电流",
- data: [
- a2, b2, c2
- ]
- },
- ];
- var xData = function() {
- var data = [];
- for (var i = 1; i < electric_current.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector("#divergenceChart2"));
- // 2.指定配置
- var option = {
- color: [{
- colorStops: [{
- offset: 0,
- color: '#F9860C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#fff' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#07E1F1' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#0456CB' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#11F90C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#3FC713' // 100% 处的颜色
- }],
- }
- ],
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#aaa"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: d2,
- axisTick: {
- show: true
- },
- axisLabel: {
- interval: 0,
- show: false,
- color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- lineStyle: {
- color: 'rgba(255,255,255,.3)'
- }
- },
- splitNumber: 8,
- splitLine: {
- show: false
- },
- splitArea: {
- show: true,
- areaStyle: {
- color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
- }
- }
- },
- yAxis: {
- type: "value",
- splitNumber: 8,
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#aaa", // 分割线颜色
- opacity: .2
- }
- }
- },
- series: [{
- symbol: "none",
- name: "方差",
- type: "line",
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "标准差",
- type: "line",
- data: sortData[0].data[1]
- }, {
- symbol: "none",
- name: "平均值",
- type: "line",
- data: sortData[0].data[2]
- }
- ]
- };
- myChart.setOption(option);
- //echarts赋值到src
- var img1 = document.getElementById('divergenceChart2_img');
- setTimeout(function() {
- img1.src = myChart.getDataURL();
- }, 1000)
- })();
- // 数据离散率挖掘3
- (function() {
- // 三相温度
- let a3 = [];
- let b3 = [];
- let c3 = [];
- let d3 = [];
- let temperature = dispersion_rate.temperature;
- temperature.forEach(function(item, index) {
- a3.push(item.variance)
- b3.push(item.standard_deviation)
- c3.push(item.average_value)
- d3.push(item.data_time)
- });
- var sortData = [{
- sortName: "三相温度",
- data: [
- a3, b3, c3
- ]
- }, ];
- var xData = function() {
- var data = [];
- for (var i = 1; i < temperature.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector("#divergenceChart3"));
- // 2.指定配置
- var option = {
- color: [{
- colorStops: [{
- offset: 0,
- color: '#F9860C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#fff' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#07E1F1' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#0456CB' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#11F90C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#3FC713' // 100% 处的颜色
- }],
- }
- ],
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#aaa"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: d3,
- axisTick: {
- show: true
- },
- axisLabel: {
- interval: 0,
- show: false,
- color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- lineStyle: {
- color: 'rgba(255,255,255,.3)'
- }
- },
- splitNumber: 8,
- splitLine: {
- show: false
- },
- splitArea: {
- show: true,
- areaStyle: {
- color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
- }
- }
- },
- yAxis: {
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#aaa", // 分割线颜色
- opacity: .2
- }
- }
- },
- series: [{
- symbol: "none",
- name: "方差",
- type: "line",
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "标准差",
- type: "line",
- data: sortData[0].data[1]
- }, {
- symbol: "none",
- name: "平均值",
- type: "line",
- data: sortData[0].data[2]
- }
- ]
- };
- myChart.setOption(option);
- //echarts赋值到src
- var img1 = document.getElementById('divergenceChart3_img');
- setTimeout(function() {
- img1.src = myChart.getDataURL();
- }, 1000)
- })();
- // 数据离散率挖掘4
- (function() {
- // 漏电电流
- let a4 = [];
- let b4 = [];
- let c4 = [];
- let d4 = [];
- let leakage_current = dispersion_rate.leakage_current;
- leakage_current.forEach(function(item, index) {
- a4.push(item.variance)
- b4.push(item.standard_deviation)
- c4.push(item.average_value)
- d4.push(item.data_time)
- });
- var sortData = [{
- sortName: "三相电流",
- data: [
- a4, b4, c4
- ]
- }, ];
- var xData = function() {
- var data = [];
- for (var i = 1; i < leakage_current.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector("#divergenceChart4"));
- // 2.指定配置
- var option = {
- color: [{
- colorStops: [{
- offset: 0,
- color: '#F9860C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#fff' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#07E1F1' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#0456CB' // 100% 处的颜色
- }],
- },
- {
- colorStops: [{
- offset: 0,
- color: '#11F90C' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#3FC713' // 100% 处的颜色
- }],
- }
- ],
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- formatter: '{a0}: {c0}<br />{a1}: {c1}<br />{a2}: {c2}<br />时间:{b}'
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#aaa"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: d4,
- axisTick: {
- show: true
- },
- axisLabel: {
- interval: 0,
- show: false,
- // color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- lineStyle: {
- color: 'rgba(255,255,255,.3)'
- }
- },
- splitNumber: 8,
- splitLine: {
- show: false
- },
- splitArea: {
- show: true,
- areaStyle: {
- color: ["rgba(250,250,250,0.05)", "rgba(250,250,250,0.0)"]
- }
- }
- },
- yAxis: {
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#aaa", // 分割线颜色
- opacity: .2
- }
- }
- },
- series: [{
- symbol: "none",
- name: "方差",
- type: "line",
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "标准差",
- type: "line",
- data: sortData[0].data[1]
- }, {
- symbol: "none",
- name: "平均值",
- type: "line",
- data: sortData[0].data[2]
- }
- ]
- };
- myChart.setOption(option);
- //echarts赋值到src
- var img1 = document.getElementById('divergenceChart4_img');
- setTimeout(function() {
- img1.src = myChart.getDataURL();
- }, 1000)
- })();
- // 电老化分析
- let electrical_aging = result.RESULT[0].electrical_aging;
- // 结论数据渲染
- var items = '';
- var conclusion = electrical_aging.conclusion
- for (x in conclusion) {
- xIndex = x.substr(x.length - 1, 1);
- items += `<div>${xIndex}、${conclusion[x]}</div>`
- }
- $('.exportBox .oldAnalysis .summaryDetail').html(items);
- // 电老化分析1
- (function() {
- // 异常设备监控电缆数据
- let a = [];
- let b = [];
- let data_time = [];
- let abnormal_equipment = electrical_aging.abnormal_equipment;
- abnormal_equipment.forEach(function(item, index) {
- a.push(item.electric_current)
- b.push(item.voltage)
- data_time.push(item.data_time)
- });
- var sortData = [{
- sortName: "异常设备",
- data: [a, b]
- },
- ];
- var xData = function() {
- var data = [];
- for (var i = 1; i < abnormal_equipment.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector("#oldAnalysisChart1"));
- // 2.指定配置
- var option = {
- color: ["#FF9C00", "#0096FF"], // 通过这个color修改两条线的颜色
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- // formatter: '{a0}: {c0}<br />{a1}: {c1}<br />时间:' + chooseTime + ''
- formatter: function(params) {
- var res = params[0].seriesName + ':' + params[0].value + '<br />' + params[1].seriesName + ':' + params[1].value + '<br />时间:' + data_time[params[0].dataIndex];
- return res;
- },
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#aaa"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: xData,
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- show: false // 去除轴线
- }
- },
- yAxis: {
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#aaa", // 分割线颜色
- opacity: .2
- }
- }
- },
- series: [{
- symbol: "none",
- name: "电流",
- type: "line",
- smooth: true, // true 可以让我们的折线显示带有弧度
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(255,156,0, 0.4)"
- },
- {
- offset: 0.8,
- color: "rgba(255,156,0, 0.3)"
- }
- ],
- false
- ),
- shadowColor: "rgba(0, 0, 0, 0.1)"
- }
- },
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "电压",
- type: "line",
- smooth: true,
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(0,150,255,0.5)"
- },
- {
- offset: 0.8,
- color: "rgba(0,150,255, 0.1)"
- }
- ],
- false
- ),
- shadowColor: "rgba(0, 0, 0, 0.1)"
- }
- },
- data: sortData[0].data[1]
- }
- ]
- };
- myChart.setOption(option);
- var img1 = document.getElementById('oldAnalysisChart1_img');
- setTimeout(function() {
- img1.src = myChart.getDataURL();
- }, 1000)
- })();
- // 电老化分析2
- (function() {
- // 漏电告警数据
- let a2 = [];
- let b2 = [];
- let data_time2 = [];
- let leakage_alarm = electrical_aging.leakage_alarm;
- leakage_alarm.forEach(function(item, index) {
- a2.push(item.electric_current)
- b2.push(item.voltage)
- data_time2.push(item.data_time)
- });
- var sortData = [{
- sortName: "漏电告警",
- data: [a2, b2]
- }];
- var xData = function() {
- var data = [];
- for (var i = 1; i < leakage_alarm.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector("#oldAnalysisChart2"));
- // 2.指定配置
- var option = {
- color: ["#FF9C00", "#0096FF"], // 通过这个color修改两条线的颜色
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- // formatter: '{a0}: {c0}<br />{a1}: {c1}<br />时间:' + chooseTime + ''
- formatter: function(params) {
- var res = params[0].seriesName + ':' + params[0].value + '<br />' + params[1].seriesName + ':' + params[1].value + '<br />时间:' + data_time2[params[0].dataIndex];
- return res;
- },
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#aaa"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: xData,
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- show: false // 去除轴线
- }
- },
- yAxis: {
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#aaa", // 分割线颜色
- opacity: .2
- }
- }
- },
- series: [{
- symbol: "none",
- name: "电流",
- type: "line",
- smooth: true, // true 可以让我们的折线显示带有弧度
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(255,156,0, 0.4)"
- },
- {
- offset: 0.8,
- color: "rgba(255,156,0, 0.3)"
- }
- ],
- false
- ),
- shadowColor: "rgba(0, 0, 0, 0.1)"
- }
- },
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "电压",
- type: "line",
- smooth: true,
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(0,150,255,0.5)"
- },
- {
- offset: 0.8,
- color: "rgba(0,150,255, 0.1)"
- }
- ],
- false
- ),
- shadowColor: "rgba(0, 0, 0, 0.1)"
- }
- },
- data: sortData[0].data[1]
- }
- ]
- };
- myChart.setOption(option);
- var img1 = document.getElementById('oldAnalysisChart2_img');
- setTimeout(function() {
- img1.src = myChart.getDataURL();
- }, 1000)
- })();
- // 热老化分析
- let thermal_aging = result.RESULT[0].thermal_aging;
- // 结论数据渲染
- var items = '';
- var conclusion = thermal_aging.conclusion
- for (x in conclusion) {
- xIndex = x.substr(x.length - 1, 1);
- items += `<div>${xIndex}、${conclusion[x]}</div>`
- }
- $('.exportBox .hotAnalysis .summaryDetail').html(items);
- // 热老化
- (function() {
- let a = [];
- let b = [];
- let c = [];
- let data_time = [];
- let visualization = thermal_aging.visualization;
- visualization.forEach(function(item, index) {
- a.push(item.generation_temperature)
- b.push(item.ambient_temperature)
- c.push(item.Cable_temperature)
- data_time.push(item.data_time)
- });
- var sortData = [{
- data: [a, b, c]
- }];
- var xData = function() {
- var data = [];
- for (var i = 1; i < visualization.length + 1; i++) {
- data.push(i);
- }
- return data;
- }();
- // 1. 实例化对象
- var myChart = echarts.init(document.querySelector("#hotAnalysisChart1"));
- // 2.指定配置
- var option = {
- color: ["#05EEE7", "#9999FF", "#FE92B3"], // 通过这个color修改三条线的颜色
- tooltip: {
- trigger: "axis",
- textStyle: {
- align: 'left' //图例左对齐
- },
- backgroundColor: '#12DFE0',
- // formatter: '{a0}: {c0}°C<br />{a1}: {c1}°C<br />{a2}: {c2}°C<br />时间:' + chooseTime + ''
- formatter: function(params) {
- var res = params[0].seriesName + ':' + params[0].value + '°C<br />' + params[1].seriesName + ':' + params[1].value + '°C<br />' + params[1].seriesName + ':' + params[1].value + '°C<br />时间:' + data_time[params[0].dataIndex];
- return res;
- },
- },
- legend: {
- // 如果series 对象有name 值,则 legend可以不用写data
- itemGap: 20,
- itemHeight: 2,
- itemWidth: 15,
- icon: 'rect',
- textStyle: {
- color: "#aaa"
- },
- top: "bottom",
- },
- grid: {
- top: "0%",
- left: "1%",
- right: "1%",
- bottom: "15%",
- show: true, // 显示边框
- borderWidth: '0', //去除边框
- containLabel: true // 包含刻度文字在内
- },
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: xData,
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- color: "#AADDFF" // 文本颜色
- },
- axisLine: {
- show: false // 去除轴线
- }
- },
- yAxis: {
- type: "value",
- axisTick: {
- show: false // 去除刻度线
- },
- axisLabel: {
- show: false // 去除文本
- },
- axisLine: {
- show: false // 去除轴线
- },
- splitLine: {
- lineStyle: {
- color: "#aaa", // 分割线颜色
- opacity: .2
- }
- }
- },
- series: [{
- symbol: "none",
- name: "线缆产生的温度",
- type: "line",
- smooth: true, // true 可以让我们的折线显示带有弧度
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(5,238,231,.6)"
- },
- {
- offset: 0.8,
- color: "rgba(5,238,231, 0.4)"
- }
- ],
- false
- ),
- }
- },
- data: sortData[0].data[0]
- },
- {
- symbol: "none",
- name: "环境温度",
- type: "line",
- smooth: true,
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(153,153,255,.6)"
- },
- {
- offset: 0.8,
- color: "rgba(153,153,255, 0.4)"
- }
- ],
- false
- ),
- }
- },
- data: sortData[0].data[1]
- },
- {
- symbol: "none",
- name: "线缆温度",
- type: "line",
- smooth: true,
- areaStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(
- 0,
- 0,
- 0,
- 1, [{
- offset: 0,
- color: "rgba(255,147,180,.6)"
- },
- {
- offset: 0.8,
- color: "rgba(255,147,180, 0.4)"
- }
- ],
- false
- ),
- }
- },
- data: sortData[0].data[2]
- }
- ]
- };
- myChart.setOption(option);
- var img1 = document.getElementById('hotAnalysisChart1_img');
- setTimeout(function() {
- img1.src = myChart.getDataURL();
- }, 1000)
- })();
- /*
- 导出数据对接 end
- */
- } else {
- // alert('暂无数据')
- layui.use('layer', function() {
- var layer = layui.layer;
- layer.alert('暂无数据', { icon: 5 }, function() {
- location.reload();
- });
- });
- }
- }, function(errorMsg) {
- layui.use('layer', function() {
- var layer = layui.layer;
- layer.alert('数据请求失败', { icon: 5 });
- });
- }, 1)
- };
- function getSearchParamObj() {
- let queryParam = {};
- let buildingVal = $('#building').val();
- let chooseTime = $('#chooseTime').val();
- queryParam.company_code = buildingVal;
- queryParam.generation_time = chooseTime;
- return queryParam;
- }
- // 打印
- (function() {
- $("#btnPrint").click(function() {
- print_detail()
- });
- var print_detail = function() {
- //打印前echarts图表转换成图片 start
- $('#divergenceChart1_img,#divergenceChart2_img,#divergenceChart3_img,#divergenceChart4_img').show()
- $('#divergenceChart1,#divergenceChart2,#divergenceChart3,#divergenceChart4').hide()
- $('#oldAnalysisChart1_img,#oldAnalysisChart2_img').show()
- $('#oldAnalysisChart1,#oldAnalysisChart2').hide()
- $('#hotAnalysisChart1_img').show()
- $('#hotAnalysisChart1').hide()
- // end
- var div1_label1 = document.getElementById('printArea').innerHTML;
- var hkey_key;
- var hkey_root = 'HKEY_CURRENT_USER';
- var hkey_path = '\\Software\\Micorsoft\\Internet Explorer\\PageSetup\\';
- var print_win = window.open('打印窗口', '_blank');
- var div = document.createElement('div');
- div.setAttribute('width', '100%');
- div.setAttribute('height', '100%');
- var div_print = document.createElement('div');
- div_print.setAttribute('style', 'width:595px;height:842px;padding:50px 20px;margin:0px auto 0px auto');
- div_print.innerHTML = div1_label1;
- div.appendChild(div_print);
- print_win.document.write(div.innerHTML);
- print_win.document.close();
- try {
- var RegWsh = new ActiveXObject('WScript.Shell');
- hkey_key = 'header';
- RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, '');
- hkey_key = 'footer';
- RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, '');
- } catch (e) {}
- print_win.print();
- print_win.close();
- }
- })()
|