Team:UT Dallas/infographics.js

From 2012.igem.org

var num_gold_coins=5; var num_silver_coins=5; var num_bronze_coins=5; var gtemp=0; var gc=0; var gh=0; var stemp=0; var sc=0; var sh=0; var btemp=0; var bc=0; var bh=0; var coin_height=50; var coin_spacing=12; var full_height=1800; var coin_array_2007 = new Array();coin_array_2007[0]=33;coin_array_2007[1]=6;coin_array_2007[2]=13;coin_array_2007[3]=2007; var coin_array_2008 = new Array();coin_array_2008[0]=18;coin_array_2008[1]=14;coin_array_2008[2]=34;coin_array_2008[3]=2008; var coin_array_2009 = new Array();coin_array_2009[0]=48;coin_array_2009[1]=19;coin_array_2009[2]=24;coin_array_2009[3]=2009; var coin_array_2010 = new Array();coin_array_2010[0]=62;coin_array_2010[1]=16;coin_array_2010[2]=21;coin_array_2010[3]=2010; var coin_array_2011 = new Array();coin_array_2011[0]=29;coin_array_2011[1]=8;coin_array_2011[2]=16;coin_array_2011[3]=2011; function coins(coin_array) {

 num_gold_coins=Math.floor((Math.ceil((coin_array[0]*250)/62))/10);
 num_silver_coins=Math.floor((Math.ceil((coin_array[1]*250)/62))/10);
 num_bronze_coins=Math.floor((Math.ceil((coin_array[2]*250)/62))/10);  
 gtemp=0;  
 gc=0;
 gh=0;
 stemp=0;  
 sc=0;
 sh=0;
 btemp=0;  
 bc=0;
 bh=0;  
 var randomnumber=0
 $("#gold_coin_graph").html();
 $("#silver_coin_graph").html();
 $("#bronze_coin_graph").html();
 gold_coin_fall(coin_array);
 silver_coin_fall(coin_array);
 bronze_coin_fall(coin_array);

} function gold_coin_fall(coin_array) {

 if(gc==0)

gh=full_height-coin_height;

 else

gh=gh-coin_spacing-coin_height;

 if(gtemp==num_gold_coins-1)
 {
$("#gold_coin_graph").append("
"+coin_array[0]+"
");

$('#year_no_awards').html('Year '+coin_array[3]);

 }
 else
$("#gold_coin_graph").append("
");
 randomnumber=Math.floor(Math.random()*9)-4;
 //alert(h);
 $('#gcoin'+gc).animate({
   top: gh+'px',

left: '+='+randomnumber,

 }, 150,'easeOutBounce', function() {
   gc=gc+1;

if(gtemp<num_gold_coins-1) { gtemp=gtemp+1; gold_coin_fall(coin_array); }

 });

}

function silver_coin_fall(coin_array) {

 if(sc==0)

sh=full_height-coin_height;

 else

sh=sh-coin_spacing-coin_height;

 if(stemp==num_silver_coins-1)
$("#silver_coin_graph").append("
"+coin_array[1]+"
");
 else
$("#silver_coin_graph").append("
");
 randomnumber=Math.floor(Math.random()*9)-4;
 //alert(h);
 $('#scoin'+sc).animate({
   top: sh+'px',

left: '+='+randomnumber,

 }, 150,'easeOutBounce', function() {
   sc=sc+1;

if(stemp<num_silver_coins-1) { stemp=stemp+1; silver_coin_fall(coin_array); }

 });

}

function bronze_coin_fall(coin_array) {

 if(bc==0)

bh=full_height-coin_height;

 else

bh=bh-coin_spacing-coin_height;

 if(btemp==num_bronze_coins-1)
$("#bronze_coin_graph").append("
"+coin_array[2]+"
");
 else
$("#bronze_coin_graph").append("
");
 randomnumber=Math.floor(Math.random()*9)-4;
 //alert(h);
 $('#bcoin'+bc).animate({
   top: bh+'px',

left: '+='+randomnumber,

 }, 150,'easeOutBounce', function() {
   bc=bc+1;

if(btemp<num_bronze_coins-1) { btemp=btemp+1; bronze_coin_fall(coin_array); }

 });

}

function init_tracks_graph() {

   function n(c) {
       c.disabled = true;
       google.visualization
           .events
           .addListener(h, "ready", function () {
           c.disabled = false
       });
       h.draw(b, a)
   }
   var a = {
       width: 975,
       height: 450,
       backgroundColor: {
           fill: "none"
       },
       legend: {
           textStyle: {
               color: "white"
           }
       },
       vAxis: {

maxValue: 40,

           baselineColor: "white",
           title: "Year",
           textStyle: {
               color: "white"
           },
           titleTextStyle: {
               color: "#ffffff",
               fontSize: 16
           }
       },
       hAxis: {

maxValue: 40,

           baselineColor: "white",
           title: "Tracks",
           textStyle: {
               color: "white"
           },
           titleTextStyle: {
               color: "#ffffff",
               fontSize: 16
           }
       },
       animation: {
           duration: 1e3,
           easing: "inAndOut"
       }
   };
   var b = [];
   var c = google.visualization
       .arrayToDataTable([
       ["Year", "Food/Energy", "Environment", "Foundational Research", "Information Processing", "Health/Medicine", "Not Specified"],
       ["2007", 7, 9, 18, 10, 9, 6]
   ]);
   var d = google.visualization
       .arrayToDataTable([
       ["Year", "Not Specified"],
       ["2008", 82]
   ]);
   var e = google.visualization
       .arrayToDataTable([
       ["Year", "Food/Energy", "Environment", "Foundational Research", "Information Processing", "Health/Medicine", "Manufacturing", "New Application", "Software Tools", "Not Specified"],
       ["2009", 8, 16, 21, 8, 15, 14, 13, 8, 2]
   ]);
   var f = google.visualization
       .arrayToDataTable([
       ["Year", "Food/Energy", "Environment", "Foundational Research", "Information Processing", "Health/Medicine", "Manufacturing", "New Application", "Software Tools", "Not Specified"],
       ["2010", 12, 16, 20, 6, 20, 17, 20, 6, 1]
   ]);
   var g = google.visualization
       .arrayToDataTable([
       ["Year", "Food/Energy", "Environment", "Foundational Research", "Information Processing", "Health/Medicine", "Manufacturing", "New Application", "Software Tools", "Not Specified"],
       ["2011", 15, 25, 26, 10, 13, 15, 31, 8, 8]
   ]);
   var h = new google.visualization
       .BarChart(document.getElementById("tracks_graphs"));
   var i = document.getElementById("b2011");
   var j = document.getElementById("b2010");
   var k = document.getElementById("b2009");
   var l = document.getElementById("b2008");
   var m = document.getElementById("b2007");
   b = g;
   i.onclick = function () {
       b = g;
       setTimeout("document.getElementById('year_no_tracks').innerHTML='Year 2011';", 1e3);
       n(i)
   };
   j.onclick = function () {
       b = f;
       setTimeout("document.getElementById('year_no_tracks').innerHTML='Year 2010';", 1e3);
       n(j)
   };
   k.onclick = function () {
       b = e;
       setTimeout("document.getElementById('year_no_tracks').innerHTML='Year 2009';", 1e3);
       n(k)
   };
   l.onclick = function () {
       b = d;
       setTimeout("document.getElementById('year_no_tracks').innerHTML='Year 2008';", 1e3);
       n(l)
   };
   m.onclick = function () {
       b = c;
       setTimeout("document.getElementById('year_no_tracks').innerHTML='Year 2007';", 1e3);
       n(m)
   };
   n(i)

} function draw_map(a) {

   var b = null;
   var c = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["Australia", 1],
       ["China", 30],
       ["India", 4],
       ["Indonesia", 1],
       ["Japan", 12],
       ["Korea", 4],
       ["Taiwan", 4],
       ["Congo", 1],
       ["Belgium", 1],
       ["Denmark", 2],
       ["France", 4],
       ["Germany", 10],
       ["Israel", 1],
       ["Italy", 2],
       ["Netherlands", 7],
       ["Norway", 1],
       ["Poland", 1],
       ["Scotland", 2],
       ["Slovenia", 1],
       ["Spain", 3],
       ["Sweden", 2],
       ["Switzerland", 2],
       ["Turkey", 3],
       ["United Kingdom", 7],
       ["Argentina", 1],
       ["Brazil", 1],
       ["Chile", 1],
       ["Colombia", 1],
       ["Costa Rica", 1],
       ["Panama", 3],
       ["Mexico", 8],
       ["United States", 56],
       ["Canada", 11]
   ]);
   var d = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["Australia", 2],
       ["China", 21],
       ["India", 3],
       ["Japan", 9],
       ["Korea", 4],
       ["Taiwan", 2],
       ["Belgium", 2],
       ["Denmark", 3],
       ["France", 5],
       ["Germany", 5],
       ["Italy", 2],
       ["Netherlands", 4],
       ["Norway", 1],
       ["Poland", 1],
       ["Scotland", 3],
       ["Spain", 3],
       ["Sweden", 1],
       ["Switzerland", 1],
       ["Turkey", 4],
       ["United Kingdom", 5],
       ["Brazil", 1],
       ["Colombia", 1],
       ["Panama", 2],
       ["Mexico", 3],
       ["United States", 43],
       ["Canada", 10],
       ["South Africa", 1],
       ["Hungary", 1]
   ]);
   var e = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["Australia", 3],
       ["China", 11],
       ["India", 3],
       ["Japan", 9],
       ["Korea", 3],
       ["Taiwan", 2],
       ["Belgium", 1],
       ["Denmark", 2],
       ["France", 3],
       ["Germany", 8],
       ["Italy", 1],
       ["Netherlands", 2],
       ["Poland", 1],
       ["Scotland", 1],
       ["Slovenia", 1],
       ["Spain", 2],
       ["Sweden", 2],
       ["Switzerland", 2],
       ["Turkey", 2],
       ["United Kingdom", 8],
       ["Panama", 1],
       ["Mexico", 3],
       ["United States", 36],
       ["Canada", 7],
       ["South Africa", 1],
       ["Hungary", 1]
   ]);
   var f = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["Australia", 2],
       ["China", 9],
       ["India", 4],
       ["Japan", 6],
       ["Korea", 2],
       ["Taiwan", 2],
       ["Belgium", 2],
       ["Denmark", 2],
       ["France", 2],
       ["Germany", 4],
       ["Italy", 2],
       ["Netherlands", 2],
       ["Poland", 1],
       ["Scotland", 1],
       ["Slovenia", 1],
       ["Spain", 2],
       ["Sweden", 2],
       ["Switzerland", 1],
       ["Turkey", 1],
       ["United Kingdom", 8],
       ["Brazil", 1],
       ["Colombia", 2],
       ["Mexico", 2],
       ["United States", 30],
       ["Canada", 10],
       ["Singapore", 1]
   ]);
   var g = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["Australia", 1],
       ["China", 9],
       ["India", 1],
       ["Japan", 3],
       ["Belgium", 1],
       ["France", 2],
       ["Germany", 2],
       ["Italy", 2],
       ["Netherlands", 2],
       ["Poland", 1],
       ["Scotland", 1],
       ["Slovenia", 1],
       ["Spain", 1],
       ["Switzerland", 2],
       ["Turkey", 2],
       ["United Kingdom", 5],
       ["Colombia", 1],
       ["Mexico", 2],
       ["United States", 28],
       ["Canada", 10],
       ["Singapore", 1]
   ]);
   var h = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["Australia", 1],
       ["China", 5],
       ["India", 1],
       ["Japan", 2],
       ["Italy", 2],
       ["Scotland", 1],
       ["Slovenia", 1],
       ["Turkey", 1],
       ["Colombia", 1],
       ["Mexico", 1],
       ["United States", 25],
       ["Canada", 6]
   ]);
   var i = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["India", 1],
       ["Japan", 2],
       ["Korea", 1],
       ["Germany", 1],
       ["Scotland", 1],
       ["Slovenia", 1],
       ["Switzerland", 1],
       ["Turkey", 1],
       ["United Kingdom", 2],
       ["Colombia", 1],
       ["Mexico", 1],
       ["United States", 23],
       ["Canada", 3]
   ]);
   var j = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["Switzerland", 1],
       ["United Kingdom", 1],
       ["United States", 10],
       ["Canada", 1]
   ]);
   var k = google.visualization
       .arrayToDataTable([
       ["Country", "Teams"],
       ["United States", 5]
   ]);
   var l = {
       legend: {
           textStyle: {
               color: "black",
               fontSize: 16
           }
       },
       datalessRegionColor: "#eeeeee",
       backgroundColor: {
           fill: "none"
       },
       colorAxis: {
           minValue: 0,
           maxValue: 56,
           colors: ["green", "yellow", "magenta", "red"]
       },
       width: 960,
       height: 700
   };
   var m = new google.visualization
       .GeoChart(document.getElementById("visualization"));
   if (a == 2012) b = c;
   else if (a == 2011) b = d;
   else if (a == 2010) b = e;
   else if (a == 2009) b = f;
   else if (a == 2008) b = g;
   else if (a == 2007) b = h;
   else if (a == 2006) b = i;
   else if (a == 2005) b = j;
   else if (a == 2004) b = k;
   if (prev_year_num != a) {
       if (prev_year_num != 0) {
           $("#visualization").fadeOut("slow", function () {
               m.draw(b, l);
               document.getElementById("year_no")
                   .innerHTML = "Year " + a;
               prev_year_num = a;
               $("#visualization").fadeIn("slow")
           })
       } else {
           m.draw(b, l);
           document.getElementById("year_no")
               .innerHTML = "Year " + a;
           prev_year_num = a
       }
   }

} var prev_year_num = 0; google.load("visualization", "1", {

   packages: ["geochart"]

}); google.load("visualization", "1", {

   packages: ["corechart"]

}); $(document).ready(function () {

   coins(coin_array_2011);
   draw_map(2012);
   init_tracks_graph();

})