图例不对应地图上的颜色。融合表

时间:2014-07-14 10:58:52

标签: javascript css google-fusion-tables

我正在使用融合表API来设计地图样式。但是在传说中,一些国家(乌干达和莫桑比克)没有显示图例中显示的正确颜色。

Link to the map

以下是显示图例的代码

    <style type="text/css">
  #legend {
    background-color: #FFF;
    margin: 10px;
    padding: 5px;
    width: 150px;
  }

  #legend p {
    font-weight: bold;
    margin-top: 3px;
  }

  #legend div {
    clear: both;
  }

  .color {
    height: 12px;
    width: 12px;
    margin-right: 3px;
    float: left;
    display: block;
  }
    #map-canvas{

        width: 700px;
        height: 650px;

    }
</style>

显示地图的代码

function initialize() {
    var map = new google.maps.Map(document.getElementById('map-canvas'), {
      center: new google.maps.LatLng(-2.358937, 27.618881),
      zoom: 4,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    });

    var layer = new google.maps.FusionTablesLayer({
      query: {
        select: 'geometry',
        from: '1MXudMo9A8yUjpO89hkac74LzGEKPyA_tDzkWJ3hl'
      }
    });
    layer.setMap(map);

    initSelectmenu();
    for (column in COLUMN_STYLES) {
      break;
    }
    applyStyle(map, layer, column);
    addLegend(map);

    google.maps.event.addDomListener(document.getElementById('selector'),
        'change', function() {
          var selectedColumn = this.value;
          applyStyle(map, layer, selectedColumn);
          updateLegend(selectedColumn);
    });
  }

1 个答案:

答案 0 :(得分:1)

'Total No of Points'已设置为Text类型,比较将基于不会产生预期结果的字符串。

简单测试:

alert('9'>'10');//true
alert(9>10);//false

解决方案:将列的类型设置为Number