function setDefaultBounds(minLatitude, minLongitude, maxLatitude, maxLongitude) {
}
var restrictMinLatitude;
var restrictMinLongitude;
var restrictMaxLatitude;
var restrictMaxLongitude;
function restrictBounds(minLatitude, minLongitude, maxLatitude, maxLongitude) {
restrictMinLatitude = minLatitude;
restrictMinLongitude = minLongitude;
restrictMaxLatitude = maxLatitude;
restrictMaxLongitude = maxLongitude;
}
var heatMapMaxValue = 1000;
var heatMapRadius = 0.005;
var heatMapMaxOpacity = 0.8;
var heatMapBlur = 0.4;
function configHeatMap(maxValue, radius, maxOpacity, blur) {
heatMapMaxValue = maxValue;
heatMapRadius = radius;
heatMapMaxOpacity = maxOpacity;
heatMapBlur = blur;
}
window.onload = function() {
function bounds(dataMinLatitude, dataMinLongitude, dataMaxLatitude, dataMaxLongitude) {
if (restrictMinLatitude == undefined ||
restrictMinLongitude == undefined ||
restrictMaxLatitude == undefined ||
restrictMaxLongitude == undefined) {
return [[dataMinLatitude, dataMinLongitude],[dataMaxLatitude, dataMaxLongitude]];
}
if (restrictMinLatitude > dataMaxLatitude ||
restrictMaxLatitude < dataMinLatitude ||
restrictMinLongitude > dataMaxLongitude ||
restrictMaxLongitude < dataMinLongitude) {
return [[restrictMinLatitude, restrictMinLongitude],[restrictMaxLatitude, restrictMaxLongitude]];
}
return [[Math.max(dataMinLatitude, restrictMinLatitude), Math.max(dataMinLongitude, restrictMinLongitude)],
[Math.min(dataMaxLatitude, restrictMaxLatitude), Math.min(dataMaxLongitude, restrictMaxLongitude)]];
}
var cfg = {
radius: heatMapRadius,
maxOpacity: heatMapMaxOpacity,
blur: heatMapBlur,
scaleRadius: true,
useLocalExtrema: false,
latField: 'lat',
lngField: 'lng',
valueField: 'offlinePercent'
};
var baseLayer = L.tileLayer(
'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',{
attribution: 'Map data © OpenStreetMap contributors, CC-BY-SA, Imagery © CloudMade',
maxZoom: 18
});
var heatmapLayer = new HeatmapOverlay(cfg);
var map = new L.Map('outageMap', {layers: [baseLayer, heatmapLayer]});
map.fitBounds(bounds(34.049208, -84.285592, 34.076187, -84.259097));
heatmapLayer.setData({max:heatMapMaxValue,data:[{lat:34.061056,lng:-84.261532,offlinePercent:50.0000},{lat:34.062309,lng:-84.269567,offlinePercent:50.0000},{lat:34.060216,lng:-84.285340,offlinePercent:50.0000},{lat:34.059925,lng:-84.282310,offlinePercent:50.0000},{lat:34.060684,lng:-84.267695,offlinePercent:50.0000},{lat:34.063035,lng:-84.268940,offlinePercent:50.0000},{lat:34.058251,lng:-84.268043,offlinePercent:50.0000},{lat:34.059700,lng:-84.265082,offlinePercent:50.0000},{lat:34.058633,lng:-84.276199,offlinePercent:50.0000},{lat:34.057836,lng:-84.263289,offlinePercent:50.0000},{lat:34.059806,lng:-84.277715,offlinePercent:50.0000},{lat:34.057174,lng:-84.278266,offlinePercent:50.0000},{lat:34.063721,lng:-84.284998,offlinePercent:50.0000},{lat:34.063367,lng:-84.285181,offlinePercent:50.0000},{lat:34.056428,lng:-84.265597,offlinePercent:50.0000},{lat:34.059435,lng:-84.276192,offlinePercent:50.0000},{lat:34.064691,lng:-84.271931,offlinePercent:50.0000},{lat:34.060885,lng:-84.264487,offlinePercent:50.0000},{lat:34.057050,lng:-84.279191,offlinePercent:50.0000},{lat:34.059939,lng:-84.283338,offlinePercent:50.0000},{lat:34.056560,lng:-84.261150,offlinePercent:50.0000},{lat:34.061746,lng:-84.267342,offlinePercent:50.0000},{lat:34.076187,lng:-84.269744,offlinePercent:50.0000},{lat:34.070196,lng:-84.274923,offlinePercent:50.0000},{lat:34.061919,lng:-84.283642,offlinePercent:50.0000},{lat:34.061977,lng:-84.283599,offlinePercent:50.0000},{lat:34.060114,lng:-84.278520,offlinePercent:50.0000},{lat:34.054705,lng:-84.277780,offlinePercent:50.0000},{lat:34.061326,lng:-84.269561,offlinePercent:50.0000},{lat:34.055290,lng:-84.266513,offlinePercent:50.0000},{lat:34.073371,lng:-84.273372,offlinePercent:50.0000},{lat:34.055262,lng:-84.266540,offlinePercent:50.0000},{lat:34.060273,lng:-84.285237,offlinePercent:50.0000},{lat:34.062283,lng:-84.285235,offlinePercent:50.0000},{lat:34.061593,lng:-84.263363,offlinePercent:50.0000},{lat:34.059693,lng:-84.285064,offlinePercent:50.0000},{lat:34.056766,lng:-84.279411,offlinePercent:50.0000},{lat:34.062899,lng:-84.268436,offlinePercent:50.0000},{lat:34.059137,lng:-84.267186,offlinePercent:50.0000},{lat:34.064183,lng:-84.284013,offlinePercent:50.0000},{lat:34.064183,lng:-84.284013,offlinePercent:50.0000},{lat:34.064183,lng:-84.284013,offlinePercent:50.0000},{lat:34.059573,lng:-84.274877,offlinePercent:50.0000},{lat:34.059894,lng:-84.282304,offlinePercent:50.0000},{lat:34.056135,lng:-84.277879,offlinePercent:50.0000},{lat:34.055825,lng:-84.279012,offlinePercent:50.0000},{lat:34.061296,lng:-84.263833,offlinePercent:50.0000},{lat:34.070325,lng:-84.274948,offlinePercent:50.0000},{lat:34.060673,lng:-84.266686,offlinePercent:50.0000},{lat:34.061937,lng:-84.267582,offlinePercent:50.0000},{lat:34.061567,lng:-84.283607,offlinePercent:50.0000},{lat:34.057782,lng:-84.268518,offlinePercent:50.0000},{lat:34.060165,lng:-84.275889,offlinePercent:50.0000},{lat:34.057073,lng:-84.278621,offlinePercent:50.0000},{lat:34.059809,lng:-84.273454,offlinePercent:50.0000},{lat:34.060542,lng:-84.267728,offlinePercent:50.0000},{lat:34.058164,lng:-84.268194,offlinePercent:50.0000},{lat:34.058796,lng:-84.259811,offlinePercent:50.0000},{lat:34.061320,lng:-84.270780,offlinePercent:50.0000},{lat:34.060079,lng:-84.267439,offlinePercent:50.0000},{lat:34.064180,lng:-84.283919,offlinePercent:50.0000},{lat:34.057077,lng:-84.278871,offlinePercent:50.0000},{lat:34.059572,lng:-84.274801,offlinePercent:50.0000},{lat:34.062045,lng:-84.263205,offlinePercent:50.0000},{lat:34.053572,lng:-84.265169,offlinePercent:50.0000},{lat:34.061841,lng:-84.283630,offlinePercent:50.0000},{lat:34.061814,lng:-84.263246,offlinePercent:50.0000},{lat:34.061662,lng:-84.273472,offlinePercent:50.0000},{lat:34.059825,lng:-84.283346,offlinePercent:50.0000},{lat:34.060228,lng:-84.274298,offlinePercent:50.0000},{lat:34.059841,lng:-84.277658,offlinePercent:50.0000},{lat:34.055214,lng:-84.276423,offlinePercent:50.0000},{lat:34.059628,lng:-84.260392,offlinePercent:50.0000},{lat:34.059690,lng:-84.265248,offlinePercent:50.0000},{lat:34.062983,lng:-84.285305,offlinePercent:50.0000},{lat:34.056942,lng:-84.279360,offlinePercent:50.0000},{lat:34.057079,lng:-84.278716,offlinePercent:50.0000},{lat:34.061718,lng:-84.283632,offlinePercent:50.0000},{lat:34.062306,lng:-84.269771,offlinePercent:50.0000},{lat:34.058167,lng:-84.268075,offlinePercent:50.0000},{lat:34.059655,lng:-84.270684,offlinePercent:50.0000},{lat:34.057071,lng:-84.278966,offlinePercent:50.0000},{lat:34.058271,lng:-84.268001,offlinePercent:50.0000},{lat:34.057077,lng:-84.279100,offlinePercent:50.0000},{lat:34.060386,lng:-84.285296,offlinePercent:50.0000},{lat:34.054913,lng:-84.264996,offlinePercent:50.0000},{lat:34.060272,lng:-84.285318,offlinePercent:50.0000},{lat:34.059663,lng:-84.259952,offlinePercent:50.0000},{lat:34.055062,lng:-84.278405,offlinePercent:50.0000},{lat:34.057098,lng:-84.279001,offlinePercent:50.0000},{lat:34.055097,lng:-84.279622,offlinePercent:50.0000},{lat:34.059758,lng:-84.265659,offlinePercent:50.0000},{lat:34.054724,lng:-84.277749,offlinePercent:50.0000},{lat:34.061861,lng:-84.270438,offlinePercent:50.0000},{lat:34.056830,lng:-84.277792,offlinePercent:50.0000},{lat:34.059360,lng:-84.261589,offlinePercent:50.0000},{lat:34.060808,lng:-84.261683,offlinePercent:50.0000},{lat:34.061445,lng:-84.263623,offlinePercent:50.0000},{lat:34.061617,lng:-84.263430,offlinePercent:50.0000},{lat:34.059849,lng:-84.283345,offlinePercent:50.0000},{lat:34.063484,lng:-84.285225,offlinePercent:50.0000},{lat:34.063484,lng:-84.285225,offlinePercent:50.0000},{lat:34.063484,lng:-84.285225,offlinePercent:50.0000},{lat:34.057123,lng:-84.276152,offlinePercent:50.0000},{lat:34.064209,lng:-84.273444,offlinePercent:50.0000},{lat:34.055617,lng:-84.280857,offlinePercent:50.0000},{lat:34.064061,lng:-84.282211,offlinePercent:50.0000},{lat:34.058668,lng:-84.261097,offlinePercent:50.0000},{lat:34.058723,lng:-84.276191,offlinePercent:50.0000},{lat:34.056919,lng:-84.277860,offlinePercent:50.0000},{lat:34.060165,lng:-84.275709,offlinePercent:50.0000},{lat:34.059200,lng:-84.260591,offlinePercent:50.0000},{lat:34.061321,lng:-84.283504,offlinePercent:50.0000},{lat:34.059362,lng:-84.261213,offlinePercent:50.0000},{lat:34.061867,lng:-84.261673,offlinePercent:50.0000},{lat:34.060859,lng:-84.284911,offlinePercent:50.0000},{lat:34.060980,lng:-84.261558,offlinePercent:50.0000},{lat:34.061419,lng:-84.261503,offlinePercent:50.0000},{lat:34.062796,lng:-84.264294,offlinePercent:50.0000},{lat:34.055115,lng:-84.279980,offlinePercent:50.0000},{lat:34.072864,lng:-84.272898,offlinePercent:50.0000},{lat:34.057681,lng:-84.265898,offlinePercent:50.0000},{lat:34.059709,lng:-84.279075,offlinePercent:50.0000},{lat:34.062583,lng:-84.264436,offlinePercent:50.0000},{lat:34.055736,lng:-84.280768,offlinePercent:50.0000},{lat:34.056412,lng:-84.279564,offlinePercent:50.0000},{lat:34.060889,lng:-84.261422,offlinePercent:50.0000},{lat:34.061880,lng:-84.283636,offlinePercent:50.0000},{lat:34.057640,lng:-84.276167,offlinePercent:50.0000},{lat:34.062620,lng:-84.263989,offlinePercent:50.0000},{lat:34.062330,lng:-84.270790,offlinePercent:50.0000},{lat:34.060135,lng:-84.277249,offlinePercent:50.0000},{lat:34.062295,lng:-84.269479,offlinePercent:50.0000},{lat:34.057252,lng:-84.278293,offlinePercent:50.0000},{lat:34.061870,lng:-84.283657,offlinePercent:50.0000},{lat:34.062579,lng:-84.265141,offlinePercent:50.0000},{lat:34.061948,lng:-84.264631,offlinePercent:50.0000},{lat:34.056743,lng:-84.276131,offlinePercent:50.0000},{lat:34.059840,lng:-84.285264,offlinePercent:50.0000},{lat:34.061078,lng:-84.267821,offlinePercent:50.0000},{lat:34.059073,lng:-84.276201,offlinePercent:50.0000},{lat:34.061317,lng:-84.270070,offlinePercent:50.0000},{lat:34.059735,lng:-84.264202,offlinePercent:50.0000},{lat:34.059989,lng:-84.272076,offlinePercent:50.0000},{lat:34.049211,lng:-84.285410,offlinePercent:50.0000},{lat:34.063042,lng:-84.285308,offlinePercent:50.0000},{lat:34.062223,lng:-84.285318,offlinePercent:50.0000},{lat:34.061246,lng:-84.283482,offlinePercent:50.0000},{lat:34.061304,lng:-84.268274,offlinePercent:50.0000},{lat:34.056860,lng:-84.279406,offlinePercent:50.0000},{lat:34.059642,lng:-84.259811,offlinePercent:50.0000},{lat:34.062587,lng:-84.263466,offlinePercent:50.0000},{lat:34.059097,lng:-84.267143,offlinePercent:50.0000},{lat:34.056136,lng:-84.277691,offlinePercent:50.0000},{lat:34.056110,lng:-84.279069,offlinePercent:50.0000},{lat:34.061292,lng:-84.269843,offlinePercent:50.0000},{lat:34.058633,lng:-84.259369,offlinePercent:50.0000},{lat:34.053666,lng:-84.277174,offlinePercent:50.0000},{lat:34.062599,lng:-84.262909,offlinePercent:50.0000},{lat:34.061308,lng:-84.283543,offlinePercent:50.0000},{lat:34.061573,lng:-84.283532,offlinePercent:50.0000},{lat:34.059355,lng:-84.268783,offlinePercent:50.0000},{lat:34.055115,lng:-84.280279,offlinePercent:50.0000},{lat:34.061660,lng:-84.265362,offlinePercent:50.0000},{lat:34.061141,lng:-84.264032,offlinePercent:50.0000},{lat:34.062710,lng:-84.285295,offlinePercent:50.0000},{lat:34.061157,lng:-84.263996,offlinePercent:50.0000},{lat:34.061919,lng:-84.267557,offlinePercent:50.0000},{lat:34.058528,lng:-84.259097,offlinePercent:50.0000},{lat:34.058800,lng:-84.265967,offlinePercent:50.0000},{lat:34.062508,lng:-84.262276,offlinePercent:50.0000},{lat:34.062581,lng:-84.264788,offlinePercent:50.0000},{lat:34.061556,lng:-84.263488,offlinePercent:50.0000},{lat:34.060999,lng:-84.267822,offlinePercent:50.0000},{lat:34.056297,lng:-84.260924,offlinePercent:50.0000},{lat:34.057546,lng:-84.262419,offlinePercent:50.0000},{lat:34.062255,lng:-84.272240,offlinePercent:50.0000},{lat:34.063089,lng:-84.269242,offlinePercent:50.0000},{lat:34.059743,lng:-84.276222,offlinePercent:50.0000},{lat:34.057485,lng:-84.268462,offlinePercent:50.0000},{lat:34.062238,lng:-84.263157,offlinePercent:50.0000},{lat:34.059334,lng:-84.278971,offlinePercent:50.0000},{lat:34.063560,lng:-84.285033,offlinePercent:50.0000},{lat:34.061232,lng:-84.283520,offlinePercent:50.0000},{lat:34.058334,lng:-84.266941,offlinePercent:50.0000},{lat:34.060213,lng:-84.275693,offlinePercent:50.0000},{lat:34.049208,lng:-84.285592,offlinePercent:50.0000},{lat:34.064320,lng:-84.283932,offlinePercent:50.0000},{lat:34.059314,lng:-84.277571,offlinePercent:50.0000},{lat:34.062396,lng:-84.262015,offlinePercent:50.0000},{lat:34.061309,lng:-84.271570,offlinePercent:50.0000},{lat:34.059760,lng:-84.277674,offlinePercent:50.0000},{lat:34.058379,lng:-84.267600,offlinePercent:50.0000},{lat:34.060476,lng:-84.262184,offlinePercent:50.0000},{lat:34.049467,lng:-84.281019,offlinePercent:50.0000},{lat:34.059686,lng:-84.259180,offlinePercent:50.0000},{lat:34.061727,lng:-84.264928,offlinePercent:50.0000},{lat:34.061929,lng:-84.283685,offlinePercent:50.0000},{lat:34.059492,lng:-84.269727,offlinePercent:50.0000},{lat:34.070099,lng:-84.273386,offlinePercent:50.0000},{lat:34.059615,lng:-84.277578,offlinePercent:50.0000},{lat:34.061319,lng:-84.269943,offlinePercent:50.0000},{lat:34.061324,lng:-84.269689,offlinePercent:50.0000},{lat:34.062072,lng:-84.283690,offlinePercent:50.0000},{lat:34.059436,lng:-84.269343,offlinePercent:50.0000},{lat:34.057637,lng:-84.278290,offlinePercent:50.0000},{lat:34.058592,lng:-84.259222,offlinePercent:50.0000},{lat:34.057068,lng:-84.278527,offlinePercent:50.0000},{lat:34.055180,lng:-84.279350,offlinePercent:50.0000},{lat:34.060870,lng:-84.284952,offlinePercent:50.0000},{lat:34.059412,lng:-84.260725,offlinePercent:50.0000},{lat:34.073506,lng:-84.274932,offlinePercent:50.0000},{lat:34.058891,lng:-84.259872,offlinePercent:50.0000},{lat:34.057541,lng:-84.278318,offlinePercent:50.0000},{lat:34.062126,lng:-84.268123,offlinePercent:50.0000},{lat:34.055545,lng:-84.279108,offlinePercent:50.0000},{lat:34.061013,lng:-84.264259,offlinePercent:50.0000},{lat:34.058095,lng:-84.268302,offlinePercent:50.0000},{lat:34.060227,lng:-84.273181,offlinePercent:50.0000},{lat:34.057722,lng:-84.262853,offlinePercent:50.0000},{lat:34.061595,lng:-84.265501,offlinePercent:50.0000},{lat:34.061334,lng:-84.269095,offlinePercent:50.0000},{lat:34.060277,lng:-84.285339,offlinePercent:50.0000},{lat:34.060010,lng:-84.273464,offlinePercent:50.0000},{lat:34.060393,lng:-84.285241,offlinePercent:50.0000},{lat:34.062265,lng:-84.271319,offlinePercent:50.0000},{lat:34.063965,lng:-84.284444,offlinePercent:50.0000},{lat:34.063965,lng:-84.284444,offlinePercent:50.0000},{lat:34.059800,lng:-84.274830,offlinePercent:50.0000},{lat:34.055180,lng:-84.279710,offlinePercent:50.0000},{lat:34.055170,lng:-84.280240,offlinePercent:50.0000},{lat:34.062550,lng:-84.265140,offlinePercent:50.0000},{lat:34.056669,lng:-84.277607,offlinePercent:50.0000},{lat:34.056017,lng:-84.260183,offlinePercent:50.0000},{lat:34.058817,lng:-84.259699,offlinePercent:50.0000},{lat:34.058345,lng:-84.266219,offlinePercent:50.0000},{lat:34.062815,lng:-84.268422,offlinePercent:50.0000},{lat:34.057288,lng:-84.278259,offlinePercent:50.0000},{lat:34.068062,lng:-84.274989,offlinePercent:50.0000},{lat:34.061911,lng:-84.270438,offlinePercent:50.0000},{lat:34.058570,lng:-84.267178,offlinePercent:50.0000},{lat:34.063443,lng:-84.285234,offlinePercent:50.0000},{lat:34.057494,lng:-84.268409,offlinePercent:50.0000},{lat:34.061525,lng:-84.261528,offlinePercent:50.0000},{lat:34.062610,lng:-84.263229,offlinePercent:50.0000},{lat:34.061660,lng:-84.265402,offlinePercent:50.0000},{lat:34.058333,lng:-84.276145,offlinePercent:50.0000},{lat:34.059475,lng:-84.269623,offlinePercent:50.0000},{lat:34.055125,lng:-84.279509,offlinePercent:50.0000}]});
};