1

異なる条件に応じてレイヤー内の異なる色で国のポリゴンを着色しています。しかし、5 つの "where" 条件の後、関連する色が検出されませんでした。ただし、デフォルトの色を使用します。なぜこうなった?以下は私のコードです:

      layer.setOptions({
        query: {
          select: 'masterNarrative, countryName',
          from: tableId,
          where: where
        },
        styles: [{
            where: "masterNarrative= '72 virgins (houris)' ",
            polygonOptions: {
              fillColor: '#2daebf',
              fillOpacity: 0.5
            }
          },
          {
              where: "masterNarrative= 'Badr' ",
              polygonOptions: {
                fillColor: '#e33100',
                fillOpacity: 0.5
              }
            },
            {
                where: "masterNarrative= 'Crusaders/Colonization' ",
                polygonOptions: {
                  fillColor: '#a9014b',
                  fillOpacity: 0.5
                }
              },
              {
                  where: "masterNarrative= 'Nakba (Palestine)' ",
                  polygonOptions: {
                    fillColor: '#871F78',
                    fillOpacity: 0.5
                  }
                },
                {
                    where: "masterNarrative= 'Hypocrites (Munafiqun)' ",
                    polygonOptions: {
                      fillColor: '#ff5c00',
                      fillOpacity: 0.5
                    }
                  },
                  {
                      where: "masterNarrative= 'Mahdi' ",
                      polygonOptions: {
                        fillColor: '#ffb515',
                        fillOpacity: 0.5
                      }
                    },
                    {
                        where: "masterNarrative= 'Musaylimah' ",
                        polygonOptions: {
                          fillColor: '#34925E',
                          fillOpacity: 0.5
                        }
                      },
                        {
                            where: "masterNarrative= 'Pharaoh' ",
                            polygonOptions: {
                              fillColor: '#E066FF',
                              fillOpacity: 0.5
                            }
                          },
                          {
                              where: "masterNarrative= 'Puppet Master' ",
                              polygonOptions: {
                                fillColor: '#00FF00',
                                fillOpacity: 0.5
                              }
                            }]
      });
4

2 に答える 2

2

FusionTablesLayer の制限に記載されているように、Maps API を使用して、最大 5 つの Fusion Tables レイヤーを地図に追加できます。そのうちの 1 つは、最大 5 つのスタイル設定ルールでスタイル設定できます。

「masterNarrative」列ごとに色を設定する際に 5 つのスタイル設定ルールを使用しないようにする方法の 1 つは、FusionTablesLayer を介して JavaScript で色を設定するのではなく、Fusion Tables UI を使用して色を設定することです。これを行うには、テーブルに「fillColor」などの別の列を作成し、その列の値を行に必要な色に設定します。次に、[視覚化] -> [マップ]、[スタイルの構成]、[塗りつぶしの色] -> [列] の順に移動して、マップの色を付ける列を選択します。

于 2012-08-01T04:14:10.090 に答える
1

FusionTablesLayer を呼び出すときに、これらの fillColors が通過していないことがわかりました。Fusion でバケット テクニックを使用していますが、マップを呼び出すと、デフォルト マーカーが表示されます。JavaScriptで行うのは冗長なように見えるので、Fusion内で関数を使用できるようにしたいと思います。

FusionTablesLayer を使用したFusion Map Calling map

于 2012-08-25T16:42:20.283 に答える