anchor.diff:              vAxis: {title: '# of Patients'},
               legend: {position: 'none'}
           }
  -        
  -        column.draw(google.visualization.arrayToDataTable(hist),options);
  +        google.visualization.events.addListener(column, 'ready', function(e){
  +            csObs.subscribe(div.id,function(caseId) {
  +                var ix = hist[1][caseId];
  +                column.setSelection(ix==null?null:[{'row': ix}]);
  +            });
  +        });
  +        column.draw(google.visualization.arrayToDataTable(hist[0]),options);
       }
       
       function plotPieChart(div,dt,col) {
           var hist = calcHistogram(dt,col);
           var column = new google.visualization.PieChart(div);
  -        column.draw(google.visualization.arrayToDataTable(hist));
  +        google.visualization.events.addListener(column, 'ready', function(e){
  +            csObs.subscribe(div.id,function(caseId) {
  +                var ix = hist[1][caseId];
  +                column.setSelection(ix==null?null:[{'row': ix}]);
  +            });
  +        });
  +        column.draw(google.visualization.arrayToDataTable(hist[0]));
       }
       
       function calcHistogram(dt,col,bins) {
           var hist = [[dt.getColumnLabel(col),'# patients']];
  +        var caseIdHistMap = {};
           var rows = dt.getNumberOfRows();
           var t = dt.getColumnType(col);
           if (t=="number") {
  
positive.code:             var count = {};
              for (var r=0; r<rows; r++) {
                  var v = dt.getValue(r,col);
                  if(v!=null)
                      count[v] = count[v] ? count[v]+1 : 1;
              }
              for (var key in count) {
                  hist.push([key,count[key]]);
              }
          }
          return hist;
      }
      
      function plotData(divNum,dt,col) {
  
negative.code:             google.visualization.events.addListener(scatter, 'ready', function(e){
                  csObs.subscribe('scatter-plot',function(caseId) {
                      var ix = caseMap[caseId];
                      scatter.setSelection(ix==null?null:[{'row': ix}]);
                  });
              });
  