Обзор
Геокарта — это карта страны, континента или региона с цветами и значениями, присвоенными конкретным регионам. Значения отображаются в виде цветовой шкалы, и вы можете указать дополнительный наводящий текст для регионов. Карта отображается в браузере с помощью встроенного Flash-плеера. Обратите внимание, что карту нельзя прокручивать или перетаскивать, но ее можно настроить на разрешение масштабирования.
Примеры
Здесь у нас есть два примера: один использует стиль отображения регионов , а другой — стиль отображения маркеров .
Пример регионов
 Стиль регионов заполняет целые регионы (обычно страны) цветами, соответствующими назначенным вами значениям. Укажите стиль регионов, назначив в коде options['dataMode'] = 'regions' . 
<html>
  <head>
    <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
    <script type="text/javascript">
      google.charts.load('current', {
        'packages':['geomap'],
        // Note: you will need to get a mapsApiKey for your project.
        // See: https://developers.google.com/chart/interactive/docs/basic_load_libs#load-settings
        'mapsApiKey': 'AIzaSyD-9tSrke72PouQMnMX-a7eZSW0jkFMBWY'
      });
      google.charts.setOnLoadCallback(drawMap);
      function drawMap() {
        var data = google.visualization.arrayToDataTable([
          ['Country', 'Popularity'],
          ['Germany', 200],
          ['United States', 300],
          ['Brazil', 400],
          ['Canada', 500],
          ['France', 600],
          ['RU', 700]
        ]);
        var options = {};
        options['dataMode'] = 'regions';
        var container = document.getElementById('regions_div');
        var geomap = new google.visualization.GeoMap(container);
        geomap.draw(data, options);
      };
    </script>
  </head>
  <body>
    <div id="regions_div" style="width: 900px; height: 500px;"></div>
  </body>
</html>
Пример маркеров
Стиль «маркеры» отображает круг, размер и цвет которого соответствует значению, над указанными вами областями.
<html>
<head>
  <script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script>
  <script type='text/javascript'>
   google.charts.load('current', {'packages': ['geomap']});
   google.charts.setOnLoadCallback(drawMap);
    function drawMap() {
      var data = google.visualization.arrayToDataTable([
        ['City', 'Popularity'],
        ['New York', 200],
        ['Boston', 300],
        ['Miami', 400],
        ['Chicago', 500],
        ['Los Angeles', 600],
        ['Houston', 700]
      ]);
      var options = {};
      options['region'] = 'US';
      options['colors'] = [0xFF8747, 0xFFB581, 0xc06000]; //orange colors
      options['dataMode'] = 'markers';
      var container = document.getElementById('map_canvas');
      var geomap = new google.visualization.GeoMap(container);
      geomap.draw(data, options);
    };
  </script>
</head>
<body>
    <div id='map_canvas'></div>
</body>
</html>
Загрузка
 Имя пакета google.charts.load — "geomap"
  google.charts.load('current', {'packages': ['geomap']});
 Имя класса визуализации геокарты — google.visualization.GeoMap
var visualization = new google.visualization.GeoMap(container);
Формат данных
Поддерживаются два формата адресов, каждый из которых поддерживает разное количество столбцов и разные типы данных для каждого столбца. Все адреса в таблице должны использовать тот или иной адрес; нельзя смешивать типы.
-  Формат 1: широта/долгота местоположений. Этот формат работает только в том случае, если для параметра dataModeустановлено значение «маркеры». Если используется этот формат, вам не нужно включать Javascript Google Map. Местоположение указывается в двух столбцах, а также в двух дополнительных столбцах:- [ Обязательный номер ] Широта. Положительные числа — север, отрицательные — юг.
- [ Обязательный номер ] Долгота. Положительные числа — восток, отрицательные — запад.
- [ Число, необязательно ] Числовое значение, отображаемое при наведении курсора мыши на эту область. Если используется столбец 4, этот столбец является обязательным.
- [ Строка, необязательно ] Дополнительный строковый текст, отображаемый при наведении курсора мыши на эту область.
 
-  Формат 2: адрес, название страны, названия регионов или коды городов США. Этот формат работает с параметром dataMode, установленным на «маркеры» или «регионы». Местоположение указывается в одном столбце плюс два дополнительных столбца:-  [ Строка, обязательная ] Местоположение на карте. Принимаются следующие форматы:- Конкретный адрес (например, «1600 Pennsylvania Ave»).
- Название страны в виде строки (например, «Англия») или код ISO-3166 в верхнем регистре или его английский текстовый эквивалент (например, «GB» или «Соединенное Королевство»).
- Кодовое имя региона ISO-3166-2 в верхнем регистре или его английский текстовый эквивалент (например, «US-NJ» или «New Jersey»). Примечание . Регионы можно указать только в том случае, если для параметра dataMode установлено значение «регионы».
- Код города . Это трехзначные коды метро, используемые для обозначения различных регионов; Поддерживаются только коды США. Обратите внимание, что это не то же самое, что телефонные коды городов.
 
- [ Число, необязательно ] Числовое значение, отображаемое при наведении курсора мыши на эту область. Если используется столбец 3, этот столбец является обязательным.
- [ Строка, необязательно ] Дополнительный строковый текст, отображаемый при наведении курсора мыши на эту область.
 
-  [ Строка, обязательная ] Местоположение на карте. Принимаются следующие форматы:
 Примечание. На карте может отображаться максимум 400 записей; если ваш DataTable или DataView содержит более 400 строк, будут показаны только первые 400. Самыми быстрыми режимами являются dataMode='regions' с местоположениями, указанными в виде кодов ISO, и dataMode='markers' с элементами широты и долготы. Самый медленный режим — dataMode='markers' со строковым адресом.
 Важно: ваш DataTable должен включать каждый необязательный столбец, предшествующий любому столбцу, который вы хотите использовать. Так, например, если вы хотите указать таблицу широты и долготы и хотите использовать только столбцы 1, 2 и 4, ваш DataTable все равно должен определять столбец 3 (хотя вам не нужно добавлять к нему какие-либо значения). :
dataTable = new google.visualization.DataTable();
dataTable.addRows(1);
dataTable.addColumn('number', 'LATITUDE', 'Latitude');
dataTable.addColumn('number', 'LONGITUDE', 'Longitude');
dataTable.addColumn('number', 'VALUE', 'Value'); // Won't use this column, but still must define it.
dataTable.addColumn('string', 'HOVER', 'HoverText');
dataTable.setValue(0,0,47.00);
dataTable.setValue(0,1,-122.00);
dataTable.setValue(0,3,"Hello World!");
Параметры конфигурации
| Имя | Тип | По умолчанию | Описание | 
|---|---|---|---|
| region | нить | 'мир' | Область для отображения на карте. (Окружающие области также будут отображаться.) Это может быть либо код страны (в верхнем регистре в формате ISO-3166 ), либо одна из следующих строк: 
  Geomap не поддерживает прокрутку или перетаскивание, а только ограниченное масштабирование. Базовое уменьшение масштаба можно включить, установив свойство  | 
| dataMode | нить | 'регионы' | Как отображать значения на карте. Поддерживаются два значения: 
 | 
| width | нить | '556 пикселей' | Ширина визуализации. Если единицы измерения не указаны, единицей по умолчанию являются пиксели. | 
| height | нить | '347 пикселей' | Высота визуализации. Если единицы измерения не указаны, единицей по умолчанию являются пиксели. | 
| colors | Массив чисел RGB в формате 0xRRGGBB | [0xE0FFD4, 0xA5EF63, 0x50AA00, 0x267114] | Цветовой градиент для присвоения значениям в визуализации. У вас должно быть как минимум два значения; градиент будет включать в себя все ваши значения, а также вычисленные промежуточные значения, при этом самый светлый цвет будет наименьшим значением, а самый темный цвет — самым высоким. | 
| showLegend | логическое значение | истинный | Если это правда, отобразите легенду для карты. | 
| showZoomOut | логическое значение | ЛОЖЬ | Если это правда, отобразите кнопку с меткой, указанной свойством zoomOutLabel. Обратите внимание, что при нажатии эта кнопка ничего не делает , кроме создания событияzoomOut. Чтобы справиться с масштабированием, перехватите это событие и измените параметрregion. Вы можете указатьshowZoomOutтолько в том случае, если параметрregionменьше, чем вид мира. Одним из способов включения масштабирования может быть прослушивание событияregionClick, изменение свойстваregionна соответствующий регион и перезагрузка карты. | 
| zoomOutLabel | нить | 'Уменьшить' | Метка для кнопки масштабирования. | 
Методы
| Метод | Тип возврата | Описание | 
|---|---|---|
| draw(data, options) | Никто | Рисует карту. Может вернуться до завершения рисования (см. событие drawingDone()). | 
| getSelection() | Массив элементов выбора | Стандартная реализация getSelection(). Выбранные элементы представляют собой строки. Этот метод работает только в том случае, если параметрdataModeимеет значение «регионы». Вы можете выбрать только регион с присвоенным значением. | 
| setSelection( selection ) | Никто | Стандартная реализация setSelection(). Рассматривает выбор как выбор строки и поддерживает выбор нескольких строк. Можно выбрать только регионы с присвоенными значениями. | 
События
| Имя | Описание | Характеристики | 
|---|---|---|
| error | Вызывается, когда возникает ошибка при попытке отобразить диаграмму. | идентификатор, сообщение | 
| select |  Запускается, когда пользователь щелкает область с присвоенным значением. Чтобы узнать, что было выбрано, вызовите   Примечание . Из-за определенных ограничений событие  | Никто | 
| regionClick |  Вызывается при щелчке по региону. Работает как для «регионов», так и для «маркеров»   Примечание . Из-за определенных ограничений событие  | Объект с единственным свойством region, представляющим собой строку в формате ISO-3166, описывающую выбранную область. | 
| zoomOut |  Вызывается при нажатии кнопки уменьшения масштаба. Чтобы справиться с масштабированием, перехватите это событие и измените параметр   Примечание . Из-за определенных ограничений событие  | Никто | 
| drawingDone | Вызывается, когда геокарта завершена. | Никто | 
Политика данных
Местоположение геокодируется с помощью Google Maps. Любые данные, не требующие геокодирования, не отправляются ни на один сервер. Дополнительную информацию об их политике в отношении данных см. в Условиях использования Карт Google .
Примечания
Из-за настроек безопасности Flash это (и все визуализации на основе Flash) может работать неправильно при доступе из местоположения файла в браузере (например, file:///c:/webhost/myhost/myviz.html), а не из URL-адрес веб-сервера (например, http://www.myhost.com/myviz.html). Обычно это проблема только тестирования. Эту проблему можно решить, как описано на веб-сайте Macromedia .