значки маркеров стиля - фьюжн столы - PullRequest
5 голосов
/ 29 марта 2012

Это предлагается в качестве помощи другим новичкам, таким как я.

Я долго пытался понять, как назначать разные значки для разных категорий маркеров в моем проекте Fusion Table.Я нашел документацию ограниченной и запутанной, и я думаю, что если я был сбит с толку, то, вероятно, другие тоже.

С помощью других и большого количества испытаний я могу поделиться с вами двумя способами сделать это.

Во-первых, значки, доступные для таблиц слияний, очень ограничены, от одногоустановите, что вы можете увидеть здесь: http://www.google.com/fusiontables/DataSource?dsrcid=308519
Увеличьте значки, плавающие в океане, и нажмите на те, которые вам нравятся, чтобы узнать их имена.

1.Стилизация из таблицы Fusion:
Создайте столбец с именем, например «Стили».Обязательно установите его TYPE как TEXT.
В столбце добавьте имена значков, которые вы хотите использовать для различных категорий.
Примеры имен: star, target и "red_blank".
КогдаВы находитесь в режиме просмотра карты, нажмите на кнопку КОНФИГУРАЦИЯ СТИЛЕЙ.Под Точки / Значок маркера выберите Столбец.Нажмите «Использовать значок, указанный в столбце», и в раскрывающемся списке выберите имя столбца, который вы установили, например.«Стили».
Просмотрите карту, и вы должны увидеть различные значки.

2.Стилизация в вашем javascript:
Добавьте секцию стилей в ваш код.Вот пример (в данном случае категории стилей были закодированы числами):

layer_2 = new google.maps.FusionTablesLayer({
  suppressInfoWindows:true,
  query: {
    select: 'Location',
    from: 'tableid' //add the id number of your table here, inside the quotes
  },

styles: [
  {where: "'style' = 14", markerOptions:{ iconName:"star"}}, // other landmarks
  {where: "'style' = 13", markerOptions:{ iconName:"wht_pushpin"}}, //businesses
  {where: "'style' = 11", markerOptions:{iconName:"red_blank"}}, //town houses
  {where: "'style' = 12", markerOptions:{ iconName:"orange_blank"}}, //country homes
  {where: "'style' = 15", markerOptions:{ iconName:"target"}},
  ]});

Оба подхода отлично работают.Поработав с обоими, теперь я думаю, что предпочитаю делать это внутри таблицы Fusion, просто потому, что я нахожу, что чем проще я могу сохранить JavaScript, тем лучше для меня.проще менять значки на лету, поскольку вам нужно всего лишь изменить одну строку кода, а не менять имя значка в столбце «Стиль» в каждой строке таблицы.

Надеюсь, это полезно.
Венди

Ответы [ 3 ]

2 голосов
/ 30 марта 2012

Также стоит ознакомиться с этой справочной статьей, в которой описано, как использовать функцию слияния для быстрого создания столбца, назначающего стили / значки для строк в вашей таблице:

Использование слияния для применения стилей карты по категориям

0 голосов
/ 14 января 2013

Также обратите внимание, что по непонятным причинам вы можете получить разные результаты в классическом и текущем интерфейсе Fusion Table.Мой fusiontablelayer не отображал правильные стили на моей карте, даже если все хорошо отображалось на визуализации таблицы fusion, но когда я переключился на классическую версию, сбросил столбец значков и исправил стилизацию информационного окна, все стало на свои места.Странно, но это сработало.

0 голосов
/ 13 апреля 2012

Для пользовательских маркеров используйте это вместо FusionTablesLayer, http://code.google.com/p/gmaps-samples/source/browse/trunk/fusiontables/custom_markers.html?spec=svn2515&r=2515, Я думаю, что их можно использовать с makerclusters.

...