2013-07-13 4 views
0

Мой DataTable:Маркер Подготовленный в неправильном положении

Country      Types of sales Total sales($) Name        State  
United states of America   chemicals 12662871 Obama        GA 
United states of America   electronics 20145684 Romney        ON 
United states of America   textiles  22458756 Gliton        MB 
United states of America   automobiles 34235684 Andrew Jackson      BC 
United states of America   chemicals 19438333 James Madison      AB 

Вместо того, чтобы дать государственную Column, если я дам имя столбца имя также нанесено на карту geochart, как и в файле подключения.

Это происходит только в том случае, если displayMode является маркером.

код Javascript:

<html> 

<head> 

<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 

<title>Google Visualization API Sample</title> 

<script type="text/javascript" src="http://www.google.com/jsapi"></script> 

<script type="text/javascript"> 

    function drawMarkersMap() { 

     var data = google.visualization.arrayToDataTable([ 

     ['Name', 'Total Sales'], 
     ['Romney', 20145684], 
     ['Obama', 12662871], 
     ['Gliton', 22458756], 
     ['Andrew Jackson', 34235684], 
     ['James Madison', 19438333] 
    ]); 

     var options = { 

      region: 'US', 
      resolution: 'provinces', 
      displayMode:'markers', 
      width: 400, 
      height: 400, 
      colorAxis: { 
       //values: [-1, 0, 1], 
       colors: ['#FF0000'] 
      } 
     }; 

     var geochart = new google.visualization.GeoChart(document.getElementById('visualization')); 

     geochart.draw(data, options); 

     google.visualization.events.addListener(geochart, 'select', function (eventOption) { 

      var item = geochart.getSelection(); 


      var value = data.getValue(item[0].row, 1); 

      alert(value); 
     }); 
    } 

    google.load('visualization', '1', { packages: ['geochart'] }); 

    google.setOnLoadCallback(drawMarkersMap); 


</script> 

</head> 

<body style="font-family: Arial;border: 0 none;"> 

<div id="visualization"></div> 

</body> 

</html> 

пожалуйста, любезно предоставить решение разрешить его.

Спасибо заранее.

+1

Я действительно не понимаю, что вы пытаетесь сделать здесь. В вашем примере кода не указаны местоположения на geochart. Можете ли вы изменить свой пример таким образом, чтобы он показывал позиции (в дополнение к объему продаж)? –

ответ

0

Предполагая, что вы хотите, чтобы отобразить каждого человека, как и в главе государства, с их имя, отображаемое при наведении курсора мыши, как это:

Geochart Sample

Вы можете достичь этого, используя такой код, используя {v:'value',f:'format'} обозначения:

function drawVisualization() { 
    var data = new google.visualization.DataTable(); 
    data.addColumn('string','Name'); 
    data.addColumn('number','Sales'); 
    data.addRows([ 
    [{v:'MA',f:'Romney'}, 20145684], 
    [{v:'IL',f:'Obama'}, 12662871], 
    [{v:'NH',f:'Gliton'}, 22458756], 
    [{v:'TN',f:'Andrew Jackson'}, 34235684], 
    [{v:'VA',f:'James Madison'}, 19438333] 
    ]); 

    var options = { 
    region: 'US', 
    resolution: 'provinces', 
    width: 600, 
    height: 400 
    }; 

var chart = new google.visualization.GeoChart (document.getElementById ('визуализация')); chart.draw (данные, параметры); };

Смежные вопросы