As in highcharts, datasets need to input using "add_data_set" method. Options can be either set by the "set_options" method as shown here or by constructing a option dictionary object and input using "set_dict_options" method (recommended)
In highmaps, the map data can be input in multiple ways:
add_map_data method: (recommended) add_map_data(geojson, **kwargs) set map directly to the input (geojson) data geojson is the map data in geojson format
set_map_source method: set_map_source(map_src, jsonp_map = False) map_src is the url (https) where map data is located, it is recommended to get map data from highcharts' map collection: https://code.highcharts.com/mapdata/ jsonp_map is boolean parameter if mapdata is loaded from jsonp geojson (from jsonp) or .js are accepted formats. default is javascript (.js) format (from highcharts)
The following example is from Highmaps Demos GeoJSON areas: http://www.highcharts.com/maps/demo/geojson
In [1]:
from highcharts import Highmap
H = Highmap(width = 650, height = 500)
options = { # construct option dict
'chart' :{ 'renderTo' : 'container'
},
'title' : {
'text' : 'GeoJSON in Highmaps'
},
'mapNavigation': {
'enabled': True,
'buttonOptions': {
'verticalAlign': 'bottom'
}
},
'colorAxis': {
},
}
data = [ # input dataset
{
"code": "DE.SH",
"value": 728
},
{
"code": "DE.BE",
"value": 710
},
{
"code": "DE.MV",
"value": 963
},
{
"code": "DE.HB",
"value": 541
},
{
"code": "DE.HH",
"value": 622
},
{
"code": "DE.RP",
"value": 866
},
{
"code": "DE.SL",
"value": 398
},
{
"code": "DE.BY",
"value": 785
},
{
"code": "DE.SN",
"value": 223
},
{
"code": "DE.ST",
"value": 605
},
{
"code": "DE.",
"value": 361
},
{
"code": "DE.NW",
"value": 237
},
{
"code": "DE.BW",
"value": 157
},
{
"code": "DE.HE",
"value": 134
},
{
"code": "DE.NI",
"value": 136
},
{
"code": "DE.TH",
"value": 704
}
]
H.set_dict_options(options) # set options
H.add_data_set(data, 'map', 'Random data', joinBy=['code_hasc', 'code'], # set dataset
states={
'hover': {
'color': '#BADA55'
}
},
dataLabels={
'enabled': True,
'format': '{point.properties.postal}'
})
H.set_map_source('http://www.highcharts.com/samples/data/jsonp.php?filename=germany.geo.json&callback=?', True) # set map data from the src (jsonp)
H
Out[1]: