PageSourceSearch

https://gire.org.mx/wp-content/themes/gire/directivas/heatmap/muerte-materna.js

js gire.org.mx collected 2026-10-02 05:35:26 UTC 3,438 bytes, 94 lines download raw bytes

1(function() {
2  'use strict';  
3  angular
4    .module('gire')    
5    .component('muerteMaterna',{
6        templateUrl : url_wp+'/directivas/heatmap/muerte-materna.html',        
7        controller : 'muerteMaternaController',
8        controllerAs : 'vm',
9        bindings : { 
10          id : '@',
11          institution : '@'             
12        }
13    }) 
14    .controller("muerteMaternaController", muerteMaternaController);
15
16  /** @ngInject */  
17  function muerteMaternaController($timeout,$filter,$scope) {
18    var vm = this;       
19    vm.data = [];
20    vm.downloadData = [];
21    $scope.$on('onRepeatLast', function (scope, element, attrs) {
22        $timeout(function(){            
23            jQuery('[data-toggle="tooltip"]').tooltip();
24        },100);
25        
26    });
27
28    vm.changeSort = function(v){
29        vm.filterSelected = v;
30        vm.data.sort(function(a,b){
31            if(v !== "entidad" ){
32                if ( parseFloat(a[vm.filterSelected]) > parseFloat(b[vm.filterSelected] )){
33                    return -1;
34                }
35                if ( parseFloat(a[vm.filterSelected]) < parseFloat(b[vm.filterSelected] )){
36                    return 1;
37                }
38                return 0;
39            }else{
40                if ( a[vm.filterSelected] < b[vm.filterSelected] ){
41                    return -1;
42                }
43                if ( a[vm.filterSelected] > b[vm.filterSelected] ){
44                    return 1;
45                }
46                return 0;
47            }
48            
49        })
50    }
51
52    vm.$onInit = function(){
53        //"https://docs.google.com/a/virk.io/spreadsheets/d/1SgVtJpvABugm6VGFT3RDxKnc3tuEJYbbQqcOG9ZnCiI/edit?usp=sharing",      
54        d3.csv("https://docs.google.com/spreadsheet/pub?key=1SgVtJpvABugm6VGFT3RDxKnc3tuEJYbbQqcOG9ZnCiI&output=csv", function(data){                                                                           
55            $timeout(function(){ 
56                vm.downloadData = angular.copy(data);                     
57                vm.data = data;
58                vm.filterSelected = "entidad";
59                vm.years = Object.keys(data[0]);          
60                if(vm.years.indexOf("entidad") !== -1){
61                    vm.years.splice(vm.years.indexOf("entidad"),1);
62                }    
63                var index = data.findIndex(function(d){ return d.entidad == "Nacional"});
64                vm.nacional = data[index];
65                vm.data.splice(index,1);
66                vm.max = d3.max(data,function(d){
67                    var m = 0;
68                    angular.forEach(vm.years,function(x,i){
69                        if(parseFloat(d[x]) > m){
70                            m = parseFloat(d[x]);
71                        }
72                    })
73                    return m;
74                }) 
75                vm.min = d3.min(data,function(d){
76                    var m = vm.max;
77                    angular.forEach(vm.years,function(x,i){
78                        if(parseFloat(d[x]) < m){
79                            m = parseFloat(d[x]);
80                        }
81                    })
82                    return m;
83                })                 
84                vm.colors = d3.scale.linear()
85                    .domain([vm.min,((vm.min+vm.max)/2),vm.max])
86                    .range(["#FFF3AB","#F2D412","#A28C00"])
87
88                
89            });                          
90        });
91    }
92  }
93
94})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.