class_docstr: Base map class
  
  Instances of this act as a base map on which you can add
  additional layers.
  
  You should use the :func:`gmaps.figure` factory method
  to instiate a figure, rather than building this class
  directly.
  
  :param initial_viewport:
      Define the initial zoom level and map centre. You should
      construct this using one of the static methods on
      :class:`gmaps.InitialViewport`. By default, the
      map is centered on the data.
  
  {map_type}
  
  {mouse_handling}
  
  :Examples:
  
  >>> m = gmaps.Map()
  >>> m.add_layer(gmaps.heatmap_layer(locations))
  
  To explicitly set the initial map zoom and center:
  
  >>> zoom_level = 8
  >>> center = (20.0, -10.0)
  >>> viewport = InitialViewport.from_zoom_center(zoom_level, center)
  >>> m = gmaps.Map(initial_viewport=viewport)
  
  To have a satellite map:
  
  >>> m = gmaps.Map(map_type='HYBRID')
  
  You can also change this dynamically:
  
  >>> m.map_type = 'TERRAIN'
class_docstr_tok: ["Base","map","class","Instances","of","this","act","as","a","base","map","on","which","you","can","add","additional","layers",".","You","should","use","the",":","func",":","`","gmaps.figure","`","factory","method","to","instiate","a","figure",",","rather","than","building","this","class","directly",".",":","param","initial_viewport",":","Define","the","initial","zoom","level","and","map","centre",".","You","should","construct","this","using","one","of","the","static","methods","on",":","class",":","`","gmaps.InitialViewport","`",".","By","default",",","the","map","is","centered","on","the","data",".","{","map_type","}","{","mouse_handling","}",":","Examples",":",">",">",">","m","=","gmaps.Map","(",")",">",">",">","m.add_layer","(","gmaps.heatmap_layer","(","locations",")",")","To","explicitly","set","the","initial","map","zoom","and","center",":",">",">",">","zoom_level","=","8",">",">",">","center","=","(","20.0",",","-10.0",")",">",">",">","viewport","=","InitialViewport.from_zoom_center","(","zoom_level",",","center",")",">",">",">","m","=","gmaps.Map","(","initial_viewport=viewport",")","To","have","a","satellite","map",":",">",">",">","m","=","gmaps.Map","(","map_type='HYBRID","'",")","You","can","also","change","this","dynamically",":",">",">",">","m.map_type","=","'TERRAIN","'"]
code: def _default_layout(self):
      return widgets.Layout(height="400px", align_self="stretch")
  
imports: import ipywidgets
  from traitlets import Unicode, default, List, Instance, observe, Dict, HasTraits, Enum, Union
  from .bounds import merge_longitude_bounds
  from .geotraitlets import Point, ZoomLevel, MapType, MouseHandling, Tilt
  from ._docutils import doc_subst
  from ._version import CLIENT_VERSION
label_desc: Use image node_id 2 for calling the Map obj's underlying member method code with example usage: obj._default_layout() and returns: widgets