Übersicht
Eine Geokarte ist eine Karte eines Landes, eines Kontinents oder einer Region, auf der Farben und Werte bestimmten Regionen zugewiesen sind. Die Werte werden als Farbskala dargestellt. Sie können optional einen Hovertext für Regionen angeben. Die Karte wird im Browser mit einem eingebetteten Flash-Player gerendert. Die Karte kann nicht gescrollt oder ziehbar sein, sie kann aber so konfiguriert werden, dass Zoomen möglich ist.
Beispiele
Hier sind zwei Beispiele: In einem wird der Darstellungsstil für Regionen verwendet und in einem anderen der Darstellungsstil von Markierungen.
Beispiel für Regionen
Der Stil für Regionen füllt ganze Regionen (in der Regel Länder) mit Farben, die den von Ihnen zugewiesenen Werten entsprechen. Geben Sie den Regionsstil an, indem Sie options['dataMode']
= 'regions'
in Ihrem Code zuweisen.
<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>
Beispiel für Markierungen
Beim Stil „Markierungen“ wird für die von Ihnen angegebenen Bereiche ein Kreis in Größe und Farbe angezeigt, der einen Wert angibt.
<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>
Wird geladen
Der Paketname „google.charts.load
“ lautet „"geomap"
“
google.charts.load('current', {'packages': ['geomap']});
Der Name der Geokarten-Visualisierungsklasse lautet google.visualization.GeoMap
var visualization = new google.visualization.GeoMap(container);
Datenformat
Es werden zwei Adressformate unterstützt, von denen jedes eine unterschiedliche Anzahl von Spalten und unterschiedliche Datentypen für jede Spalte unterstützt. Alle Adressen in der Tabelle müssen einen der beiden Typen verwenden. Typen dürfen nicht kombiniert werden.
- Format 1: Breiten- und Längengrade. Dieses Format funktioniert nur, wenn die Option
dataMode
„markers“ ist. Wenn dieses Format verwendet wird, musst du das Google Maps-JavaScript nicht verwenden. Der Standort wird in zwei Spalten eingegeben, plus zwei optionale Spalten:- [Number, required] Ein Breitengrad. Positive Zahlen entsprechen Norden, negative Zahlen Süden.
- [Number, required] Ein Längengrad. Positive Zahlen entsprechen Osten, negative Zahlen Westen.
- [Zahl, optional] Ein numerischer Wert, der angezeigt wird, wenn der Nutzer den Mauszeiger auf diese Region bewegt. Wenn Spalte 4 verwendet wird, ist diese Spalte erforderlich.
- [String, optional] Zusätzlicher Stringtext, der angezeigt wird, wenn der Nutzer den Mauszeiger auf diese Region bewegt.
- Format 2: Adresse, Ländername, Regionsname, Standorte oder US-Großraumvorwahlen. Dieses Format funktioniert mit der Option
dataMode
, die entweder auf „Markierungen“ oder „Regionen“ festgelegt ist. Der Standort wird in einer Spalte angegeben, plus zwei optionale Spalten:- [String, required] Ein Standort auf der Karte. Folgende Formate werden akzeptiert:
- Eine bestimmte Adresse, z. B. „Hauptstraße 16“.
- Ein Ländername als String (z. B. "England") oder ein ISO-3166-Code in Großbuchstaben oder sein äquivalentes englisches Textzeichen (z. B. "GB" oder "Vereinigtes Königreich").
- Ein großgeschriebener Regionscode gemäß ISO-3166-2 oder ein äquivalentes englisches Textelement, z. B. „US-NJ“ oder „New Jersey“. Hinweis: Regionen können nur angegeben werden, wenn die dataMode-Option auf „regions“ festgelegt ist.
- Eine Metropolvorwahl. Dies sind dreistellige Großraumcodes, mit denen verschiedene Regionen gekennzeichnet werden. Nur US-Codes werden unterstützt. Beachten Sie, dass diese nicht mit Vorwahlen identisch sind.
- [Zahl, optional] Ein numerischer Wert, der angezeigt wird, wenn der Nutzer den Mauszeiger auf diese Region bewegt. Wenn Spalte 3 verwendet wird, ist diese Spalte erforderlich.
- [String, optional] Zusätzlicher Stringtext, der angezeigt wird, wenn der Nutzer den Mauszeiger auf diese Region bewegt.
- [String, required] Ein Standort auf der Karte. Folgende Formate werden akzeptiert:
Hinweis: Auf einer Karte können maximal 400 Einträge angezeigt werden. Wenn Ihre DataTable oder DataView mehr als 400 Zeilen umfasst, werden nur die ersten 400 angezeigt. Die schnellsten Modi sind dataMode='regions'
mit Standorten, die als ISO-Codes angegeben sind, und dataMode='markers'
mit Breiten- und Längengraden. Der langsamste Modus ist dataMode='markers'
mit einer Stringadresse.
Wichtig: Ihre DataTable
muss jede optionale Spalte vor jeder zu verwendenden Spalte enthalten. Wenn Sie beispielsweise eine Tabelle mit Längen- und Breitengraden angeben und nur die Spalten 1, 2 und 4 verwenden möchten, muss in DataTable
noch Spalte 3 definiert werden, Sie müssen aber keine Werte hinzufügen:
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!");
Konfigurationsoptionen
Name | Typ | Standard | Beschreibung |
---|---|---|---|
region |
String | "world" | Das Gebiet, das auf der Karte angezeigt werden soll. (Umliegende Gebiete werden ebenfalls angezeigt.) Der Wert kann entweder ein Ländercode (im ISO-3166 in Großbuchstaben) oder ein einer der folgenden Strings sein:
Für Landkarten ist kein Scrollen oder Ziehen möglich, sondern nur ein eingeschränkter Zoom. Ein einfaches Herauszoomen kann durch Festlegen der Eigenschaft |
dataMode |
String | „regions“ (Regionen) | So blenden Sie Werte auf der Karte ein. Es werden zwei Werte unterstützt:
|
width |
String | "556px" | Breite der Visualisierung. Wenn keine Einheiten angegeben sind, werden Pixel als Standardeinheit verwendet. |
height |
String | "347px" | Höhe der Visualisierung. Wenn keine Einheiten angegeben sind, werden Pixel als Standardeinheit verwendet. |
colors |
Array von RGB-Zahlen im Format 0xRRGGBB | [0xE0FFD4, 0xA5EF63, 0x50AA00, 0x267114] | Farbverlauf, der den Werten in der Visualisierung zugewiesen wird. Sie müssen mindestens zwei Werte angeben. Der Farbverlauf umfasst alle Ihre Werte sowie berechnete Zwischenwerte, wobei die hellste Farbe der kleinste Wert und die dunkelste der höchste Wert ist. |
showLegend |
boolean | true | Falls wahr, wird eine Legende für die Karte angezeigt. |
showZoomOut |
boolean | false | Wenn dies auf „true“ gesetzt ist, wird eine Schaltfläche mit dem Label angezeigt, das durch das Attribut zoomOutLabel angegeben wird. Beachten Sie, dass diese Schaltfläche nichts bewirkt, wenn sie angeklickt wird, außer dass das Ereignis zoomOut ausgelöst wird.
Erfassen Sie dieses Ereignis und ändern Sie die Option region , um das Zoomen zu bearbeiten.
Sie können showZoomOut nur angeben, wenn die Option region kleiner als die Weltansicht ist. Eine Möglichkeit, das Heranzoomen zu aktivieren, besteht darin, auf das regionClick -Ereignis zu warten, die Eigenschaft region in die entsprechende Region zu ändern und die Karte neu zu laden. |
zoomOutLabel |
String | „Herauszoomen“ | Label für die Zoom-Schaltfläche. |
Methoden
Methode | Rückgabetyp | Beschreibung |
---|---|---|
draw(data, options) |
Ohne | Zeichnet die Karte. Kann zurückkehren, bevor das Zeichnen abgeschlossen ist (siehe Ereignis drawingDone() ). |
getSelection() |
Array von Auswahlelementen | Standardimplementierung von getSelection() Die ausgewählten Elemente sind Zeilen. Diese Methode funktioniert nur, wenn die Option dataMode auf „regions“ gesetzt ist. Sie können nur eine Region mit einem zugewiesenen Wert auswählen. |
setSelection(selection) |
Ohne | Standardmäßige setSelection() -Implementierung. Behandelt eine Auswahl als Zeilenauswahl und unterstützt die Mehrfachauswahl von Zeilen. Es können nur Regionen mit zugewiesenen Werten ausgewählt werden. |
Ereignisse
Name | Beschreibung | Attribute |
---|---|---|
error |
Wird ausgelöst, wenn beim Versuch, das Diagramm zu rendern, ein Fehler auftritt. | ID, Nachricht |
select |
Wird ausgelöst, wenn der Nutzer auf eine Region mit einem zugewiesenen Wert klickt. Wenn Sie wissen möchten, was ausgewählt wurde, rufen Sie Hinweis: Aufgrund bestimmter Einschränkungen wird das Ereignis |
Ohne |
regionClick |
Wird aufgerufen, wenn auf eine Region geklickt wird. Funktioniert sowohl für „Regionen“ als auch für „Markierungen“ Hinweis: Aufgrund bestimmter Einschränkungen wird das Ereignis |
Ein Objekt mit der einzelnen Eigenschaft region , bei der es sich um einen String im ISO-3166-Format handelt, der die angeklickte Region beschreibt. |
zoomOut |
Wird aufgerufen, wenn auf die Schaltfläche zum Herauszoomen geklickt wird. Erfassen Sie dieses Ereignis und ändern Sie die Option Hinweis: Aufgrund bestimmter Einschränkungen wird das Ereignis |
Ohne |
drawingDone |
Wird aufgerufen, wenn das Zeichnen der Geomap abgeschlossen ist. | Ohne |
Datenrichtlinie
Standorte werden von Google Maps geocodiert. Daten, die keine Geocodierung erfordern, werden an keinen Server gesendet. Weitere Informationen zu den Datenrichtlinien finden Sie in den Google Maps-Nutzungsbedingungen.
Hinweise
Aufgrund der Flash-Sicherheitseinstellungen funktionieren diese Methode (und alle Flash-basierten Visualisierungen) möglicherweise nicht ordnungsgemäß, wenn sie von einem Dateispeicherort im Browser (z.B. file:///c:/webhost/myhost/myviz.html) statt über eine Webserver-URL (z.B. http://www.myhost.com/myviz.html) aufgerufen werden. Dies ist in der Regel nur ein Testproblem. Sie können dieses Problem wie auf der Macromedia-Website beschrieben beheben.