class_docstr: DataFrame plotting accessor and method
  
  Examples
  --------
  >>> df.plot_bokeh.line()
  >>> df.plot_bokeh.scatter('x', 'y')
  >>> df.plot_bokeh.hexbin()
  
  These plotting methods can also be accessed by calling the accessor as a
  method with the ``kind`` argument:
  ``df.plot_bokeh(kind='line')`` is equivalent to ``df.plot_bokeh.line()``
class_docstr_tok: ["DataFrame","plotting","accessor","and","method","Examples","--","--","--","--",">",">",">","df.plot_bokeh.line","(",")",">",">",">","df.plot_bokeh.scatter","(","'","x","'",",","'","y","'",")",">",">",">","df.plot_bokeh.hexbin","(",")","These","plotting","methods","can","also","be","accessed","by","calling","the","accessor","as","a","method","with","the","``","kind","``","argument",":","``","df.plot_bokeh","(","kind='line","'",")","``","is","equivalent","to","``","df.plot_bokeh.line","(",")","``"]
docstr: Create a plot of geographic points stored in a Pandas DataFrame on an
  interactive map.
  
  The coordinates (latitude/longitude) of each point are defined by two
  dataframe columns.
  
  Parameters
  ----------
  x : int or str
      The column name or column position to be used as horizontal
      coordinates (longitude) for each point.
  
  y : int or str
      The column name or column position to be used as vertical
      coordinates (latitude) for each point.
  
  hovertool_string : str
      If specified, this string will be used for the hovertool (@{column}
      will be replaced by the value of the column for the element the
      mouse hovers over, see also Bokeh documentation). This can be
      used to display additional information on the map.
  
  tile_provider : None or str (default: 'CARTODBPOSITRON_RETINA')
      Define build-in tile provider for background maps. Possible
      values: None, 'CARTODBPOSITRON', 'CARTODBPOSITRON_RETINA',
      'STAMEN_TERRAIN', 'STAMEN_TERRAIN_RETINA', 'STAMEN_TONER',
      'STAMEN_TONER_BACKGROUND', 'STAMEN_TONER_LABELS'.
  
  tile_provider_url : str
      An arbitraty tile_provider_url of the form '/{Z}/{X}/{Y}*.png'
      can be passed to be used as background map.
  
  tile_attribution : str
      String (also HTML accepted) for showing attribution
      for tile source in the lower right corner.
  
  tile_alpha : float (Default: 1)
      Sets the alpha value of the background tile between [0, 1].
  
  **kwds
      Keyword arguments to pass on to :meth:`pandas.DataFrame.plot_bokeh`.
  
  Returns
  -------
  Bokeh.plotting.figure
  
  See Also
  --------
  bokeh.plotting.figure.scatter : scatter plot using multiple input data
      formats.
  
  Examples
  --------
  Let's see how to draw a scatter plot using coordinates from the values
  in a DataFrame's columns. Below an example of plotting all cities
  for more than 1 million inhabitants:
  
  .. plot::
      :context: close-figs
  
      >>> df_mapplot = pd.read_csv(r"https://raw.githubusercontent.com            ... /PatrikHlobil/Pandas-Bokeh/master/docs/Testdata            ... /populated%20places/populated_places.csv")
      >>> df_mapplot["size"] = df_mapplot["pop_max"] / 1000000
      >>> df_mapplot.plot_bokeh.map(
      ...     x="longitude",
      ...     y="latitude",
      ...     hovertool_string="<h2> @{name} </h2> 
  
       ...                       <h3> Population: @{pop_max} </h3>",
      ...     tile_provider='STAMEN_TERRAIN_RETINA',
      ...     size="size",
      ...     figsize=(900, 600),
      ...     title="World cities with more than 1.000.000 inhabitants")
docstr_tok: ["Create","a","plot","of","geographic","points","stored","in","a","Pandas","DataFrame","on","an","interactive","map",".","The","coordinates","(","latitude\/longitude",")","of","each","point","are","defined","by","two","dataframe","columns",".","Parameters","--","--","--","--","--","x",":","int","or","str","The","column","name","or","column","position","to","be","used","as","horizontal","coordinates","(","longitude",")","for","each","point",".","y",":","int","or","str","The","column","name","or","column","position","to","be","used","as","vertical","coordinates","(","latitude",")","for","each","point",".","hovertool_string",":","str","If","specified",",","this","string","will","be","used","for","the","hovertool","(","@","{","column","}","will","be","replaced","by","the","value","of","the","column","for","the","element","the","mouse","hovers","over",",","see","also","Bokeh","documentation",")",".","This","can","be","used","to","display","additional","information","on","the","map",".","tile_provider",":","None","or","str","(","default",":","'CARTODBPOSITRON_RETINA","'",")","Define","build-in","tile","provider","for","background","maps",".","Possible","values",":","None",",","'CARTODBPOSITRON","'",",","'CARTODBPOSITRON_RETINA","'",",","'STAMEN_TERRAIN","'",",","'STAMEN_TERRAIN_RETINA","'",",","'STAMEN_TONER","'",",","'STAMEN_TONER_BACKGROUND","'",",","'STAMEN_TONER_LABELS","'",".","tile_provider_url",":","str","An","arbitraty","tile_provider_url","of","the","form","'\/","{","Z","}","\/","{","X","}","\/","{","Y","}","*",".png'","can","be","passed","to","be","used","as","background","map",".","tile_attribution",":","str","String","(","also","HTML","accepted",")","for","showing","attribution","for","tile","source","in","the","lower","right","corner",".","tile_alpha",":","float","(","Default",":","1",")","Sets","the","alpha","value","of","the","background","tile","between","[","0",",","1","]",".","*","*","kwds","Keyword","arguments","to","pass","on","to",":","meth",":","`","pandas.DataFrame.plot_bokeh","`",".","Returns","--","--","--","-","Bokeh.plotting.figure","See","Also","--","--","--","--","bokeh.plotting.figure.scatter",":","scatter","plot","using","multiple","input","data","formats",".","Examples","--","--","--","--","Let","'s","see","how","to","draw","a","scatter","plot","using","coordinates","from","the","values","in","a","DataFrame","'s","columns",".","Below","an","example","of","plotting","all","cities","for","more","than","1","million","inhabitants",":","..","plot",":",":",":","context",":","close-figs",">",">",">","df_mapplot","=","pd.read_csv","(","r","''","https",":","\/\/raw.githubusercontent.com","...","\/PatrikHlobil\/Pandas-Bokeh\/master\/docs\/Testdata","...","\/populated","%","20places\/populated_places.csv","''",")",">",">",">","df_mapplot","[","``","size","''","]","=","df_mapplot","[","``","pop_max","''","]","\/","1000000",">",">",">","df_mapplot.plot_bokeh.map","(","...","x=","''","longitude","''",",","...","y=","''","latitude","''",",","...","hovertool_string=","''","<","h2",">","@","{","name","}","<","\/h2",">","...","<","h3",">","Population",":","@","{","pop_max","}","<","\/h3",">","''",",","...","tile_provider='STAMEN_TERRAIN_RETINA","'",",","...","size=","''","size","''",",","...","figsize=","(","900",",","600",")",",","...","title=","''","World","cities","with","more","than","1.000.000","inhabitants","''",")"]
code: def map(self, x, y, **kwds):
      """
          Create a plot of geographic points stored in a Pandas DataFrame on an
          interactive map.
  
          The coordinates (latitude/longitude) of each point are defined by two
          dataframe columns.
  
          Parameters
          ----------
          x : int or str
              The column name or column position to be used as horizontal
              coordinates (longitude) for each point.
  
          y : int or str
              The column name or column position to be used as vertical
              coordinates (latitude) for each point.
  
          hovertool_string : str
              If specified, this string will be used for the hovertool (@{column}
              will be replaced by the value of the column for the element the
              mouse hovers over, see also Bokeh documentation). This can be
              used to display additional information on the map.
  
          tile_provider : None or str (default: 'CARTODBPOSITRON_RETINA')
              Define build-in tile provider for background maps. Possible
              values: None, 'CARTODBPOSITRON', 'CARTODBPOSITRON_RETINA',
              'STAMEN_TERRAIN', 'STAMEN_TERRAIN_RETINA', 'STAMEN_TONER',
              'STAMEN_TONER_BACKGROUND', 'STAMEN_TONER_LABELS'.
  
          tile_provider_url : str
              An arbitraty tile_provider_url of the form '/{Z}/{X}/{Y}*.png'
              can be passed to be used as background map.
  
          tile_attribution : str
              String (also HTML accepted) for showing attribution
              for tile source in the lower right corner.
  
          tile_alpha : float (Default: 1)
              Sets the alpha value of the background tile between [0, 1].
  
          **kwds
              Keyword arguments to pass on to :meth:`pandas.DataFrame.plot_bokeh`.
  
          Returns
          -------
          Bokeh.plotting.figure
  
          See Also
          --------
          bokeh.plotting.figure.scatter : scatter plot using multiple input data
              formats.
  
          Examples
          --------
          Let's see how to draw a scatter plot using coordinates from the values
          in a DataFrame's columns. Below an example of plotting all cities
          for more than 1 million inhabitants:
  
          .. plot::
              :context: close-figs
  
              >>> df_mapplot = pd.read_csv(r"https://raw.githubusercontent.com\
              ... /PatrikHlobil/Pandas-Bokeh/master/docs/Testdata\
              ... /populated%20places/populated_places.csv")
              >>> df_mapplot["size"] = df_mapplot["pop_max"] / 1000000
              >>> df_mapplot.plot_bokeh.map(
              ...     x="longitude",
              ...     y="latitude",
              ...     hovertool_string="<h2> @{name} </h2> \n\n \
              ...                       <h3> Population: @{pop_max} </h3>",
              ...     tile_provider='STAMEN_TERRAIN_RETINA',
              ...     size="size",
              ...     figsize=(900, 600),
              ...     title="World cities with more than 1.000.000 inhabitants")
  
          """
      return self(kind="map", x=x, y=y, **kwds)
  
imports: import datetime
  import numbers
  import warnings
  from copy import deepcopy
  from typing import Iterable, List, Optional, Union
  import numpy
  import pandas
  from bokeh.layouts import column
  from bokeh.models import ColorBar, ColumnDataSource, DatetimeTickFormatter, FuncTickFormatter, HoverTool, LinearColorMapper, RangeTool
  from bokeh.models.ranges import Range1d
  from bokeh.palettes import Inferno256, all_palettes
  from bokeh.plotting import figure
  from bokeh.transform import cumsum, dodge
  from pandas.core.base import PandasObject
  from pandas.errors import ParserError
  from .base import embedded_html, set_fontsizes_of_figure, show
  from .geoplot import geoplot
  from .utils import _extract_additional_columns
label_desc: Use image node_id 13 for calling the FramePlotMethods obj's underlying member method code with example usage: obj.map(x, y) and returns: self