Geoviews: Add a slider to choropleth map










0















I'm working on GeoViews and I'd like to know if we could have a slider as an input for the choropleth map in GeoViews.



I've another variable in gdf, which is year. Is it possible to have a slider to show year wise Total_Crimes?



Edit: Added more information:



gdf dataframe has following variables.



beat_num Year Total_Crimes beat district sector geometry
111 2012 1449 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
111 2013 1645 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
111 2014 1636 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
111 2015 1642 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
111 2016 1836 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...


I've essentially grouped gdf by beat_num and Year and found out Total_Crimes for each group.
Datatypes of gdf:



beat_num int64
Year int64
Total_Crimes int64
beat object
district object
sector object
geometry object


Entire Code:



import geopandas as gpd
import holoviews as hv
import geoviews as gv
import geoviews.tile_sources as gts

hv.extension('bokeh')
geometries = gpd.read_file('geo_export_3b3b25c2-a600-40c3-a663-2f7ad8dc2b9c.shp')
#Reading the shape file for each beat_num.

geometries['beat_num']=geometries['beat_num'].apply(int)
#Converted the beat_num to integers

gdf = gpd.GeoDataFrame(pd.merge(ca_df, geometries))
#dataframe ca_df has total crimes for each beat_num and each year and merged it with geometries to get shape for each beat_num.

plot_opts = dict(tools=['hover'], width=750, height=700, color_index='Total_Crimes',
colorbar=True, toolbar='above', xaxis=None, yaxis=None)
gts.ESRI *gv.Polygons(gdf, vdims=['beat_num', 'Total_Crimes'], label='Chicago Crime Data').opts(plot=plot_opts,style=dict(alpha=0.7))


Output:
Output










share|improve this question




























    0















    I'm working on GeoViews and I'd like to know if we could have a slider as an input for the choropleth map in GeoViews.



    I've another variable in gdf, which is year. Is it possible to have a slider to show year wise Total_Crimes?



    Edit: Added more information:



    gdf dataframe has following variables.



    beat_num Year Total_Crimes beat district sector geometry
    111 2012 1449 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
    111 2013 1645 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
    111 2014 1636 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
    111 2015 1642 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
    111 2016 1836 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...


    I've essentially grouped gdf by beat_num and Year and found out Total_Crimes for each group.
    Datatypes of gdf:



    beat_num int64
    Year int64
    Total_Crimes int64
    beat object
    district object
    sector object
    geometry object


    Entire Code:



    import geopandas as gpd
    import holoviews as hv
    import geoviews as gv
    import geoviews.tile_sources as gts

    hv.extension('bokeh')
    geometries = gpd.read_file('geo_export_3b3b25c2-a600-40c3-a663-2f7ad8dc2b9c.shp')
    #Reading the shape file for each beat_num.

    geometries['beat_num']=geometries['beat_num'].apply(int)
    #Converted the beat_num to integers

    gdf = gpd.GeoDataFrame(pd.merge(ca_df, geometries))
    #dataframe ca_df has total crimes for each beat_num and each year and merged it with geometries to get shape for each beat_num.

    plot_opts = dict(tools=['hover'], width=750, height=700, color_index='Total_Crimes',
    colorbar=True, toolbar='above', xaxis=None, yaxis=None)
    gts.ESRI *gv.Polygons(gdf, vdims=['beat_num', 'Total_Crimes'], label='Chicago Crime Data').opts(plot=plot_opts,style=dict(alpha=0.7))


    Output:
    Output










    share|improve this question


























      0












      0








      0








      I'm working on GeoViews and I'd like to know if we could have a slider as an input for the choropleth map in GeoViews.



      I've another variable in gdf, which is year. Is it possible to have a slider to show year wise Total_Crimes?



      Edit: Added more information:



      gdf dataframe has following variables.



      beat_num Year Total_Crimes beat district sector geometry
      111 2012 1449 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
      111 2013 1645 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
      111 2014 1636 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
      111 2015 1642 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
      111 2016 1836 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...


      I've essentially grouped gdf by beat_num and Year and found out Total_Crimes for each group.
      Datatypes of gdf:



      beat_num int64
      Year int64
      Total_Crimes int64
      beat object
      district object
      sector object
      geometry object


      Entire Code:



      import geopandas as gpd
      import holoviews as hv
      import geoviews as gv
      import geoviews.tile_sources as gts

      hv.extension('bokeh')
      geometries = gpd.read_file('geo_export_3b3b25c2-a600-40c3-a663-2f7ad8dc2b9c.shp')
      #Reading the shape file for each beat_num.

      geometries['beat_num']=geometries['beat_num'].apply(int)
      #Converted the beat_num to integers

      gdf = gpd.GeoDataFrame(pd.merge(ca_df, geometries))
      #dataframe ca_df has total crimes for each beat_num and each year and merged it with geometries to get shape for each beat_num.

      plot_opts = dict(tools=['hover'], width=750, height=700, color_index='Total_Crimes',
      colorbar=True, toolbar='above', xaxis=None, yaxis=None)
      gts.ESRI *gv.Polygons(gdf, vdims=['beat_num', 'Total_Crimes'], label='Chicago Crime Data').opts(plot=plot_opts,style=dict(alpha=0.7))


      Output:
      Output










      share|improve this question
















      I'm working on GeoViews and I'd like to know if we could have a slider as an input for the choropleth map in GeoViews.



      I've another variable in gdf, which is year. Is it possible to have a slider to show year wise Total_Crimes?



      Edit: Added more information:



      gdf dataframe has following variables.



      beat_num Year Total_Crimes beat district sector geometry
      111 2012 1449 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
      111 2013 1645 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
      111 2014 1636 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
      111 2015 1642 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...
      111 2016 1836 1 01 1 POLYGON ((-87.62451050462798 41.88829675314376...


      I've essentially grouped gdf by beat_num and Year and found out Total_Crimes for each group.
      Datatypes of gdf:



      beat_num int64
      Year int64
      Total_Crimes int64
      beat object
      district object
      sector object
      geometry object


      Entire Code:



      import geopandas as gpd
      import holoviews as hv
      import geoviews as gv
      import geoviews.tile_sources as gts

      hv.extension('bokeh')
      geometries = gpd.read_file('geo_export_3b3b25c2-a600-40c3-a663-2f7ad8dc2b9c.shp')
      #Reading the shape file for each beat_num.

      geometries['beat_num']=geometries['beat_num'].apply(int)
      #Converted the beat_num to integers

      gdf = gpd.GeoDataFrame(pd.merge(ca_df, geometries))
      #dataframe ca_df has total crimes for each beat_num and each year and merged it with geometries to get shape for each beat_num.

      plot_opts = dict(tools=['hover'], width=750, height=700, color_index='Total_Crimes',
      colorbar=True, toolbar='above', xaxis=None, yaxis=None)
      gts.ESRI *gv.Polygons(gdf, vdims=['beat_num', 'Total_Crimes'], label='Chicago Crime Data').opts(plot=plot_opts,style=dict(alpha=0.7))


      Output:
      Output







      python bokeh holoviews geoviews






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 14 '18 at 20:55







      Samira Kumar

















      asked Nov 13 '18 at 0:35









      Samira KumarSamira Kumar

      4716




      4716






















          1 Answer
          1






          active

          oldest

          votes


















          0














          Yes, it's always possible to have a slider in GeoViews if you want one! I can't quite tell what you're doing from that code snippet, but I'm guessing that gdf is a GeoPandas dataframe, which would presumably have latitude and longitude as key dimensions. To get a slider, you then need to add an additional key dimension ('kdim')for the year. You may also need to aggregate the data by year, if it's not already aggregated in that way. There are examples on pyviz.org and geoviews.org that should get you started, or you can post a more complete example.






          share|improve this answer























          • I've updated the post with entire code and output.. Thanks

            – Samira Kumar
            Nov 14 '18 at 20:56










          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53272108%2fgeoviews-add-a-slider-to-choropleth-map%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          0














          Yes, it's always possible to have a slider in GeoViews if you want one! I can't quite tell what you're doing from that code snippet, but I'm guessing that gdf is a GeoPandas dataframe, which would presumably have latitude and longitude as key dimensions. To get a slider, you then need to add an additional key dimension ('kdim')for the year. You may also need to aggregate the data by year, if it's not already aggregated in that way. There are examples on pyviz.org and geoviews.org that should get you started, or you can post a more complete example.






          share|improve this answer























          • I've updated the post with entire code and output.. Thanks

            – Samira Kumar
            Nov 14 '18 at 20:56















          0














          Yes, it's always possible to have a slider in GeoViews if you want one! I can't quite tell what you're doing from that code snippet, but I'm guessing that gdf is a GeoPandas dataframe, which would presumably have latitude and longitude as key dimensions. To get a slider, you then need to add an additional key dimension ('kdim')for the year. You may also need to aggregate the data by year, if it's not already aggregated in that way. There are examples on pyviz.org and geoviews.org that should get you started, or you can post a more complete example.






          share|improve this answer























          • I've updated the post with entire code and output.. Thanks

            – Samira Kumar
            Nov 14 '18 at 20:56













          0












          0








          0







          Yes, it's always possible to have a slider in GeoViews if you want one! I can't quite tell what you're doing from that code snippet, but I'm guessing that gdf is a GeoPandas dataframe, which would presumably have latitude and longitude as key dimensions. To get a slider, you then need to add an additional key dimension ('kdim')for the year. You may also need to aggregate the data by year, if it's not already aggregated in that way. There are examples on pyviz.org and geoviews.org that should get you started, or you can post a more complete example.






          share|improve this answer













          Yes, it's always possible to have a slider in GeoViews if you want one! I can't quite tell what you're doing from that code snippet, but I'm guessing that gdf is a GeoPandas dataframe, which would presumably have latitude and longitude as key dimensions. To get a slider, you then need to add an additional key dimension ('kdim')for the year. You may also need to aggregate the data by year, if it's not already aggregated in that way. There are examples on pyviz.org and geoviews.org that should get you started, or you can post a more complete example.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 14 '18 at 0:52









          James A. BednarJames A. Bednar

          68625




          68625












          • I've updated the post with entire code and output.. Thanks

            – Samira Kumar
            Nov 14 '18 at 20:56

















          • I've updated the post with entire code and output.. Thanks

            – Samira Kumar
            Nov 14 '18 at 20:56
















          I've updated the post with entire code and output.. Thanks

          – Samira Kumar
          Nov 14 '18 at 20:56





          I've updated the post with entire code and output.. Thanks

          – Samira Kumar
          Nov 14 '18 at 20:56

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53272108%2fgeoviews-add-a-slider-to-choropleth-map%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Use pre created SQLite database for Android project in kotlin

          Darth Vader #20

          Ondo