|  |  | 
 |  |  |             .attr("dy", "1em") | 
 |  |  |             .text(function(d) { return d.subtitle; }); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * | 
 |  |  |      * @param sortKeys 排序好的key数组 | 
 |  |  |      * @param data  监控数据 | 
 |  |  |      * @param sensors 设备明细 | 
 |  |  |      * @param alarmData 报警数据 | 
 |  |  |      * @param alarmLevels 报警阀值配置 | 
 |  |  |      * @returns {Array} | 
 |  |  |      */ | 
 |  |  |     function createBulletData(sortKeys,data,sensors,alarmData,alarmLevels) { | 
 |  |  |         var bullets = []; | 
 |  |  |         for(var index = 0; index<sortKeys.length;index++){ | 
 |  |  | 
 |  |  |               var sensor = sensors.find(function (value) { | 
 |  |  |                     return value.sensorKey == sensorKey; | 
 |  |  |               }); | 
 |  |  |             sensorLevel = alarmLevels[sensorKey]; | 
 |  |  |             if(!sensor) break; | 
 |  |  |             bullet.title = !!sensor["description"]?sensor["description"]:sensor.name; | 
 |  |  |             bullet.subtitle = sensor.unit; | 
 |  |  |             bullet.state = !!alarmData[sensorKey]?alarmData[sensorKey]:0; | 
 |  |  |             bullet.measures.push(data[sensorKey]); | 
 |  |  |             bullet.markers.push(data[sensorKey]); | 
 |  |  |             sensorLevel = alarmLevels[sensorKey]; | 
 |  |  |             if(!!sensorLevel.enable){ | 
 |  |  |                 var start = 0; | 
 |  |  |             var start = 0; | 
 |  |  |             if(!!sensorLevel&&!!sensorLevel.enable){ | 
 |  |  |                 var ranges = sensorLevel.increment; | 
 |  |  |                 if(!!sensorLevel.degressEnable){ | 
 |  |  |                     var inFirst = sensorLevel.increment[0]; | 
 |  |  |                     var deFirst = sensorLevel.degression[0]; | 
 |  |  |                     start = (inFirst+deFirst)/2; | 
 |  |  |                     ranges = Math.abs(data[sensorKey]-inFirst) >  Math.abs(data[sensorKey]-deFirst) ? sensorLevel.degression:sensorLevel.increment; | 
 |  |  |                     bullet.startPoint = start; | 
 |  |  |                 } | 
 |  |  |                 bullet.startPoint = start; | 
 |  |  |                 bullet.ranges = ranges; | 
 |  |  |             }else { | 
 |  |  |                 var range = data[sensorKey]*10; | 
 |  |  | 
 |  |  |             } | 
 |  |  |             bullets.push(bullet); | 
 |  |  |         } | 
 |  |  |         console.log(bullets); | 
 |  |  |         return bullets; | 
 |  |  |     } | 
 |  |  |     // init page | 
 |  |  |     (function () { | 
 |  |  |         debugger; | 
 |  |  |         var alarm = $.parseJSON($("#alarm").text()); | 
 |  |  |         alarm["json"] = $.parseJSON(alarm.json); | 
 |  |  |         var device = $.parseJSON($("#device").text()); |