hvplot 0.9.3a2__tar.gz → 0.10.0rc1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.github/workflows/build.yaml +2 -1
  2. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.github/workflows/test.yaml +30 -6
  3. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.pre-commit-config.yaml +1 -0
  4. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/PKG-INFO +5 -3
  5. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/conf.py +40 -27
  6. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/conftest.py +3 -1
  7. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/developer_guide/index.md +1 -1
  8. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/releases.md +55 -0
  9. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Customization.ipynb +3 -2
  10. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Geographic_Data.ipynb +2 -2
  11. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Large_Timeseries.ipynb +5 -1
  12. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Plotting_with_Plotly.ipynb +2 -9
  13. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/envs/py3.10-tests.yaml +1 -0
  14. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/envs/py3.11-docs.yaml +1 -0
  15. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/envs/py3.11-tests.yaml +1 -0
  16. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/envs/py3.12-tests.yaml +1 -0
  17. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/envs/py3.8-tests.yaml +1 -0
  18. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/envs/py3.9-tests.yaml +1 -0
  19. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/_version.py +2 -2
  20. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/converter.py +9 -23
  21. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testui.py +7 -0
  22. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testutil.py +4 -0
  23. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/ui.py +5 -0
  24. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/util.py +29 -5
  25. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot.egg-info/PKG-INFO +5 -3
  26. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot.egg-info/requires.txt +5 -2
  27. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/pyproject.toml +8 -4
  28. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.git-blame-ignore-revs +0 -0
  29. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.git_archival.txt +0 -0
  30. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.gitattributes +0 -0
  31. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.github/CONTRIBUTING.md +0 -0
  32. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.github/FUNDING.yml +0 -0
  33. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.github/workflows/docs.yaml +0 -0
  34. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/.gitignore +0 -0
  35. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/CHANGELOG.md +0 -0
  36. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/CODE_OF_CONDUCT.md +0 -0
  37. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/LICENSE +0 -0
  38. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/README.md +0 -0
  39. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/binder/environment.yml +0 -0
  40. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/binder/postBuild +0 -0
  41. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/conda.recipe/meta.yaml +0 -0
  42. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/custom.css +0 -0
  43. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/favicon.ico +0 -0
  44. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/bokeh.gif +0 -0
  45. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/dask.gif +0 -0
  46. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/explorer.gif +0 -0
  47. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/geo.gif +0 -0
  48. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/geopandas.gif +0 -0
  49. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/intake.gif +0 -0
  50. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/interactive_hvplot.gif +0 -0
  51. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/interactive_pandas.gif +0 -0
  52. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/interactive_xarray.gif +0 -0
  53. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/large_data.gif +0 -0
  54. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/layout.gif +0 -0
  55. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/matplotlib.png +0 -0
  56. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/networkx.gif +0 -0
  57. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/overlay.png +0 -0
  58. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/pandas.gif +0 -0
  59. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/plotly.gif +0 -0
  60. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/widgets.gif +0 -0
  61. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/home/xarray.gif +0 -0
  62. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/images/heat_and_trees.png +0 -0
  63. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/images/portfolio.png +0 -0
  64. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/logo.png +0 -0
  65. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/logo_horizontal.svg +0 -0
  66. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/_static/logo_stacked.svg +0 -0
  67. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/about.md +0 -0
  68. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/assets/console.png +0 -0
  69. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/assets/console_server.gif +0 -0
  70. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/assets/diagram.png +0 -0
  71. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/assets/diagram.svg +0 -0
  72. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/assets/hvplot-wm.png +0 -0
  73. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/assets/streamz_demo.gif +0 -0
  74. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/getting_started/explorer.ipynb +0 -0
  75. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/getting_started/hvplot.ipynb +0 -0
  76. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/getting_started/index.md +0 -0
  77. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/getting_started/installation.md +0 -0
  78. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/getting_started/interactive.ipynb +0 -0
  79. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/governance/project-docs/CONTRIBUTING.md +0 -0
  80. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/governance/project-docs/GOVERNANCE.md +0 -0
  81. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/governance/project-docs/LICENSE.md +0 -0
  82. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/governance/project-docs/MEMBERS.md +0 -0
  83. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/index.md +0 -0
  84. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/geopandas/points.ipynb +0 -0
  85. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/geopandas/polygons.ipynb +0 -0
  86. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/andrewscurves.ipynb +0 -0
  87. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/area.ipynb +0 -0
  88. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/bar.ipynb +0 -0
  89. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/barh.ipynb +0 -0
  90. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/bivariate.ipynb +0 -0
  91. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/box.ipynb +0 -0
  92. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/errorbars.ipynb +0 -0
  93. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/heatmap.ipynb +0 -0
  94. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/hexbin.ipynb +0 -0
  95. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/hist.ipynb +0 -0
  96. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/kde.ipynb +0 -0
  97. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/labels.ipynb +0 -0
  98. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/lagplot.ipynb +0 -0
  99. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/line.ipynb +0 -0
  100. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/ohlc.ipynb +0 -0
  101. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/parallelcoordinates.ipynb +0 -0
  102. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/scatter.ipynb +0 -0
  103. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/scattermatrix.ipynb +0 -0
  104. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/step.ipynb +0 -0
  105. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/table.ipynb +0 -0
  106. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/tabular/violin.ipynb +0 -0
  107. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/bar.ipynb +0 -0
  108. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/contour.ipynb +0 -0
  109. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/contourf.ipynb +0 -0
  110. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/hist.ipynb +0 -0
  111. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/image.ipynb +0 -0
  112. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/kde.ipynb +0 -0
  113. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/line.ipynb +0 -0
  114. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/quadmesh.ipynb +0 -0
  115. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/rgb.ipynb +0 -0
  116. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/vectorfield.ipynb +0 -0
  117. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/reference/xarray/violin.ipynb +0 -0
  118. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/roadmap.md +0 -0
  119. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/topics.md +0 -0
  120. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Explorer.ipynb +0 -0
  121. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Gridded_Data.ipynb +0 -0
  122. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Integrations.ipynb +0 -0
  123. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Interactive.ipynb +0 -0
  124. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Introduction.ipynb +0 -0
  125. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/NetworkX.ipynb +0 -0
  126. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Pandas_API.ipynb +0 -0
  127. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Plotting.ipynb +0 -0
  128. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Plotting_Extensions.ipynb +0 -0
  129. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Plotting_with_Matplotlib.ipynb +0 -0
  130. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Statistical_Plots.ipynb +0 -0
  131. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Streaming.ipynb +0 -0
  132. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Subplots.ipynb +0 -0
  133. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Timeseries_Data.ipynb +0 -0
  134. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Viewing.ipynb +0 -0
  135. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/Widgets.ipynb +0 -0
  136. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/images/simple.svg +0 -0
  137. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/doc/user_guide/index.md +0 -0
  138. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/__init__.py +0 -0
  139. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/backend_transforms.py +0 -0
  140. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/cudf.py +0 -0
  141. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/dask.py +0 -0
  142. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/data/crime.csv +0 -0
  143. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/datasets.yaml +0 -0
  144. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/fugue.py +0 -0
  145. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/ibis.py +0 -0
  146. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/intake.py +0 -0
  147. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/interactive.py +0 -0
  148. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/networkx.py +0 -0
  149. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/pandas.py +0 -0
  150. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/plotting/__init__.py +0 -0
  151. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/plotting/andrews_curves.py +0 -0
  152. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/plotting/core.py +0 -0
  153. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/plotting/lag_plot.py +0 -0
  154. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/plotting/parallel_coordinates.py +0 -0
  155. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/plotting/scatter_matrix.py +0 -0
  156. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/polars.py +0 -0
  157. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/sample_data.py +0 -0
  158. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/streamz.py +0 -0
  159. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/__init__.py +0 -0
  160. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/conftest.py +0 -0
  161. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/data/README.md +0 -0
  162. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/data/RGB-red.byte.tif +0 -0
  163. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/plotting/__init__.py +0 -0
  164. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/plotting/testcore.py +0 -0
  165. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/plotting/testohlc.py +0 -0
  166. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/plotting/testscattermatrix.py +0 -0
  167. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/test_links.py +0 -0
  168. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testbackend_transforms.py +0 -0
  169. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testcharts.py +0 -0
  170. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testfugue.py +0 -0
  171. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testgeo.py +0 -0
  172. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testgeowithoutgv.py +0 -0
  173. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testgridplots.py +0 -0
  174. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testhelp.py +0 -0
  175. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testibis.py +0 -0
  176. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testinteractive.py +0 -0
  177. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testnetworkx.py +0 -0
  178. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testoperations.py +0 -0
  179. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testoptions.py +0 -0
  180. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testoverrides.py +0 -0
  181. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testpanel.py +0 -0
  182. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testpatch.py +0 -0
  183. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testplotting.py +0 -0
  184. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/teststreaming.py +0 -0
  185. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/testtransforms.py +0 -0
  186. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/tests/util.py +0 -0
  187. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/utilities.py +0 -0
  188. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot/xarray.py +0 -0
  189. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot.egg-info/SOURCES.txt +0 -0
  190. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot.egg-info/dependency_links.txt +0 -0
  191. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot.egg-info/entry_points.txt +0 -0
  192. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/hvplot.egg-info/top_level.txt +0 -0
  193. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/scripts/update_conda_envs.py +0 -0
  194. {hvplot-0.9.3a2 → hvplot-0.10.0rc1}/setup.cfg +0 -0
@@ -38,7 +38,8 @@ jobs:
38
38
  - name: conda setup
39
39
  run: conda install anaconda-client conda-build setuptools_scm
40
40
  - name: conda build
41
- run: VERSION=`python -m setuptools_scm` conda build conda.recipe/
41
+ # TODO: remove --no-test when Dask 2024.4.2 is released on defaults
42
+ run: VERSION=`python -m setuptools_scm` conda build conda.recipe/ --no-test
42
43
  - name: conda dev upload
43
44
  if: (github.event_name == 'push' && (contains(steps.vars.outputs.tag, 'a') || contains(steps.vars.outputs.tag, 'b') || contains(steps.vars.outputs.tag, 'rc')))
44
45
  run: anaconda --token ${{ secrets.CONDA_UPLOAD_TOKEN }} upload --user pyviz --label=dev $(VERSION=`python -m setuptools_scm` conda build --output conda.recipe)
@@ -6,8 +6,6 @@ on:
6
6
  - 'v[0-9]+.[0-9]+.[0-9]+a[0-9]+'
7
7
  - 'v[0-9]+.[0-9]+.[0-9]+b[0-9]+'
8
8
  - 'v[0-9]+.[0-9]+.[0-9]+rc[0-9]+'
9
- branches:
10
- - main
11
9
  pull_request:
12
10
  branches:
13
11
  - '*'
@@ -62,7 +60,13 @@ jobs:
62
60
  run: |
63
61
  MATRIX=$(jq -nsc '{
64
62
  "os": ["ubuntu-latest", "macos-latest", "windows-latest"],
65
- "python-version": ["3.8", "3.12"]
63
+ "python-version": ["3.8", "3.12"],
64
+ "exclude": [
65
+ {
66
+ "python-version": "3.8",
67
+ "os": "macos-latest"
68
+ }
69
+ ]
66
70
  }')
67
71
  echo "MATRIX=$MATRIX" >> $GITHUB_ENV
68
72
  - name: Set test matrix with 'full' option
@@ -70,7 +74,27 @@ jobs:
70
74
  run: |
71
75
  MATRIX=$(jq -nsc '{
72
76
  "os": ["ubuntu-latest", "macos-latest", "windows-latest"],
73
- "python-version": ["3.8", "3.9", "3.10", "3.11", "3.12"]
77
+ "python-version": ["3.8", "3.12"],
78
+ "include": [
79
+ {
80
+ "python-version": "3.9",
81
+ "os": "ubuntu-latest"
82
+ },
83
+ {
84
+ "python-version": "3.10",
85
+ "os": "ubuntu-latest"
86
+ },
87
+ {
88
+ "python-version": "3.11",
89
+ "os": "ubuntu-latest"
90
+ }
91
+ ],
92
+ "exclude": [
93
+ {
94
+ "python-version": "3.8",
95
+ "os": "macos-latest"
96
+ }
97
+ ]
74
98
  }')
75
99
  echo "MATRIX=$MATRIX" >> $GITHUB_ENV
76
100
  - name: Set test matrix with 'downstream' option
@@ -138,10 +162,10 @@ jobs:
138
162
  - name: install without geo
139
163
  # Because cartopy cannot be installed on Python 3.8 on these platforms
140
164
  if: matrix.python-version == '3.8' && contains(fromJSON('["ubuntu-latest", "windows-latest"]'), matrix.os)
141
- run: pip install -ve '.[tests, examples-tests, hvdev]'
165
+ run: pip install -ve '.[tests, examples-tests, hvdev, dev-extras]'
142
166
  - name: install with geo
143
167
  if: matrix.python-version != '3.8' || !contains(fromJSON('["ubuntu-latest", "windows-latest"]'), matrix.os)
144
- run: pip install -ve '.[tests, examples-tests, geo, hvdev, hvdev-geo]'
168
+ run: pip install -ve '.[tests, examples-tests, geo, hvdev, hvdev-geo, dev-extras]'
145
169
  - name: pip list
146
170
  run: pip list
147
171
  - name: bokeh sampledata
@@ -29,6 +29,7 @@ repos:
29
29
  rev: v0.1.14
30
30
  hooks:
31
31
  - id: clean-notebook
32
+ args: [-i, tags]
32
33
  - repo: https://github.com/codespell-project/codespell
33
34
  rev: v2.2.6
34
35
  hooks:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hvplot
3
- Version: 0.9.3a2
3
+ Version: 0.10.0rc1
4
4
  Summary: A high-level plotting API for the PyData ecosystem built on HoloViews.
5
5
  Author-email: Philipp Rudiger <developers@holoviz.org>
6
6
  Maintainer-email: HoloViz developers <developers@holoviz.org>
@@ -47,7 +47,7 @@ Requires-Dist: scipy; extra == "tests-core"
47
47
  Requires-Dist: xarray; extra == "tests-core"
48
48
  Provides-Extra: tests
49
49
  Requires-Dist: hvplot[tests-core]; extra == "tests"
50
- Requires-Dist: fugue; extra == "tests"
50
+ Requires-Dist: fugue[sql]; extra == "tests"
51
51
  Requires-Dist: ibis-framework[duckdb]; extra == "tests"
52
52
  Requires-Dist: polars; extra == "tests"
53
53
  Provides-Extra: geo
@@ -64,7 +64,7 @@ Requires-Dist: pygraphviz; extra == "graphviz"
64
64
  Provides-Extra: examples
65
65
  Requires-Dist: dask[dataframe]>=2021.3.0; extra == "examples"
66
66
  Requires-Dist: datashader>=0.6.5; extra == "examples"
67
- Requires-Dist: fugue; extra == "examples"
67
+ Requires-Dist: fugue[sql]; extra == "examples"
68
68
  Requires-Dist: ibis-framework[duckdb]; extra == "examples"
69
69
  Requires-Dist: intake-parquet>=0.2.3; extra == "examples"
70
70
  Requires-Dist: intake-xarray>=0.5.0; extra == "examples"
@@ -105,6 +105,8 @@ Requires-Dist: param>=0.0.1a1; extra == "hvdev"
105
105
  Requires-Dist: pyviz_comms>=0.0.1a1; extra == "hvdev"
106
106
  Provides-Extra: hvdev-geo
107
107
  Requires-Dist: geoviews>=0.0.1a1; extra == "hvdev-geo"
108
+ Provides-Extra: dev-extras
109
+ Requires-Dist: setuptools_scm>=6; extra == "dev-extras"
108
110
 
109
111
  # hvPlot makes data analysis and visualization simple <img src="https://github.com/holoviz/hvplot/blob/main/doc/_static/logo.png?raw=true" style="width:2em;margin-bottom:-15px">
110
112
 
@@ -1,3 +1,4 @@
1
+ import os
1
2
  import param
2
3
 
3
4
  param.parameterized.docstring_signature = False
@@ -15,11 +16,6 @@ description = 'A high-level plotting API for the PyData ecosystem built on HoloV
15
16
  version = release = base_version(hvplot.__version__) # noqa
16
17
  nbbuild_cell_timeout = 600
17
18
 
18
- # mystnb
19
- nb_execution_excludepatterns = [
20
- 'user_guide/Streaming.ipynb',
21
- ]
22
-
23
19
  exclude_patterns = ['governance']
24
20
 
25
21
  html_static_path += ['_static'] # noqa
@@ -51,6 +47,7 @@ html_theme_options.update( # noqa
51
47
  },
52
48
  ],
53
49
  'pygment_dark_style': 'material',
50
+ 'announcement': "hvPlot 0.10 has just been released! Checkout the <a href='https://blog.holoviz.org/posts/hvplot_release_0.10/'>blog post</a> and support hvPlot by giving it a 🌟 on <a href='https://github.com/holoviz/hvplot'>Github</a>.",
54
51
  }
55
52
  )
56
53
 
@@ -93,28 +90,6 @@ nbsite_analytics = {
93
90
  }
94
91
 
95
92
  rediraffe_redirects = {
96
- # When the pandas section was renamed tabular:
97
- 'reference/pandas/andrewscurves': 'reference/tabular/andrewscurves',
98
- 'reference/pandas/area': 'reference/tabular/area',
99
- 'reference/pandas/bar': 'reference/tabular/bar',
100
- 'reference/pandas/barh': 'reference/tabular/barh',
101
- 'reference/pandas/bivariate': 'reference/tabular/bivariate',
102
- 'reference/pandas/box': 'reference/tabular/box',
103
- 'reference/pandas/errorbars': 'reference/tabular/errorbars',
104
- 'reference/pandas/heatmap': 'reference/tabular/heatmap',
105
- 'reference/pandas/hexbin': 'reference/tabular/hexbin',
106
- 'reference/pandas/hist': 'reference/tabular/hist',
107
- 'reference/pandas/kde': 'reference/tabular/kde',
108
- 'reference/pandas/labels': 'reference/tabular/labels',
109
- 'reference/pandas/lagplot': 'reference/tabular/lagplot',
110
- 'reference/pandas/line': 'reference/tabular/line',
111
- 'reference/pandas/ohlc': 'reference/tabular/ohlc',
112
- 'reference/pandas/parallelcoordinates': 'reference/tabular/parallelcoordinates',
113
- 'reference/pandas/scatter': 'reference/tabular/scatter',
114
- 'reference/pandas/scattermatrix': 'reference/tabular/scattermatrix',
115
- 'reference/pandas/step': 'reference/tabular/step',
116
- 'reference/pandas/table': 'reference/tabular/table',
117
- 'reference/pandas/violin': 'reference/tabular/violin',
118
93
  # Removal of the developer testing page
119
94
  'developer_guide/testing': 'developer_guide/index',
120
95
  }
@@ -127,3 +102,41 @@ html_context.update( # noqa
127
102
  'default_mode': 'light',
128
103
  }
129
104
  )
105
+
106
+ # mystnb
107
+ nb_execution_excludepatterns = [
108
+ 'user_guide/Streaming.ipynb',
109
+ ]
110
+
111
+ if os.getenv('HVPLOT_REFERENCE_GALLERY') not in ('False', 'false', '0'):
112
+ rediraffe_redirects.update(
113
+ {
114
+ # When the pandas section was renamed tabular:
115
+ 'reference/pandas/andrewscurves': 'reference/tabular/andrewscurves',
116
+ 'reference/pandas/area': 'reference/tabular/area',
117
+ 'reference/pandas/bar': 'reference/tabular/bar',
118
+ 'reference/pandas/barh': 'reference/tabular/barh',
119
+ 'reference/pandas/bivariate': 'reference/tabular/bivariate',
120
+ 'reference/pandas/box': 'reference/tabular/box',
121
+ 'reference/pandas/errorbars': 'reference/tabular/errorbars',
122
+ 'reference/pandas/heatmap': 'reference/tabular/heatmap',
123
+ 'reference/pandas/hexbin': 'reference/tabular/hexbin',
124
+ 'reference/pandas/hist': 'reference/tabular/hist',
125
+ 'reference/pandas/kde': 'reference/tabular/kde',
126
+ 'reference/pandas/labels': 'reference/tabular/labels',
127
+ 'reference/pandas/lagplot': 'reference/tabular/lagplot',
128
+ 'reference/pandas/line': 'reference/tabular/line',
129
+ 'reference/pandas/ohlc': 'reference/tabular/ohlc',
130
+ 'reference/pandas/parallelcoordinates': 'reference/tabular/parallelcoordinates',
131
+ 'reference/pandas/scatter': 'reference/tabular/scatter',
132
+ 'reference/pandas/scattermatrix': 'reference/tabular/scattermatrix',
133
+ 'reference/pandas/step': 'reference/tabular/step',
134
+ 'reference/pandas/table': 'reference/tabular/table',
135
+ 'reference/pandas/violin': 'reference/tabular/violin',
136
+ }
137
+ )
138
+ else:
139
+ if 'nbsite.gallery' in extensions:
140
+ extensions.remove('nbsite.gallery')
141
+ exclude_patterns.append('doc/reference')
142
+ nb_execution_excludepatterns.append('doc/reference/**/*.ipynb')
@@ -2,7 +2,9 @@ import dask
2
2
  from importlib.util import find_spec
3
3
  from bokeh.io.webdriver import webdriver_control
4
4
 
5
- collect_ignore_glob = []
5
+ collect_ignore_glob = [
6
+ 'user_guide/Streaming.ipynb',
7
+ ]
6
8
 
7
9
  if not find_spec('pygraphviz'):
8
10
  collect_ignore_glob += [
@@ -79,7 +79,7 @@ source .venv/bin/activate
79
79
  Install the test dependencies:
80
80
 
81
81
  ``` bash
82
- pip install -e '.[tests, examples-tests, geo, hvdev, hvdev-geo]'
82
+ pip install -e '.[tests, examples-tests, geo, hvdev, hvdev-geo, dev-extras]'
83
83
  ```
84
84
 
85
85
  :::
@@ -2,6 +2,61 @@
2
2
 
3
3
  See [the HoloViz blog](https://blog.holoviz.org/#category=hvplot) for a visual summary of the major features added in a selection of releases.
4
4
 
5
+ ## Version 0.10.0 (2024-05-06)
6
+
7
+ This minor release brings a number of enhancements and bugfixes, checkout the [release blog post](https://blog.holoviz.org/posts/hvplot_release_0.10/) for a visual summary of the most important enhancements.
8
+
9
+ - 🧰 Improving the contributor experience: moving away from `pyctdev` to a more usual and easier approach, and adopt `ruff` as a linter and formatter
10
+ - 📦 Modernizing hvPlot's packaging: migrating to `pyproject.toml`
11
+ - 📖 Improving the documentation: adding a user guide on large time-series and improving the geographic user guide
12
+ - 📈 Enhancing the plotting API: in part to support the [NumFocus SDG](https://opencollective.com/holoviz/projects/holoviz-sdg-2023-round-3) project that aims to modernize the [HoloViz Examples](https://examples.holoviz.org)
13
+ - 🐛 Fixing bugs!
14
+
15
+ Many thanks to @ahuang11, @droumis, @Hoxbro, @jsignell, and @maximlt for their contributions.
16
+
17
+ Governance:
18
+
19
+ - Andrew (@ahuang11) promoted as Maintainer! ([#1267](https://github.com/holoviz/hvplot/pull/1267))
20
+
21
+ Enhancements:
22
+
23
+ - Add `bgcolor` parameter to set the background color ([#1308](https://github.com/holoviz/hvplot/pull/1308))
24
+ - Add `robust` parameter, similarly to Xarray ([#1291](https://github.com/holoviz/hvplot/pull/1291))
25
+ - Add `tiles_opts` parameter to customize the tiles ([#1299](https://github.com/holoviz/hvplot/pull/1299))
26
+ - Add support to `xyzservices` tiles ([#1307](https://github.com/holoviz/hvplot/pull/1307))
27
+ - Allow to set the `downsample` algorithm as string input ([#1314](https://github.com/holoviz/hvplot/pull/1314))
28
+ - Allow `crs` as Cartopy class name to match `projection` ([#1332](https://github.com/holoviz/hvplot/pull/1332))
29
+
30
+ Bug Fixes:
31
+
32
+ - Fix saving Panel objects with `hvplot.save` ([#1297](https://github.com/holoviz/hvplot/pull/1297))
33
+ - Fix setting `group_label` when plotting a histogram ([#1310](https://github.com/holoviz/hvplot/pull/1310))
34
+ - Fix the support of HoloViews ImageStack support and usage of `aggregator` and `by` ([#1316](https://github.com/holoviz/hvplot/pull/1316))
35
+ - Fix handling of EPSG codes ([#1330](https://github.com/holoviz/hvplot/pull/1330))
36
+ - Explorer: fix handling of Xarray objects that have dims without coords ([#1334](https://github.com/holoviz/hvplot/pull/1334))
37
+
38
+ Compatibility:
39
+
40
+ - Minor changes in preparation of the HoloViews Pandas index refactor ([#1281](https://github.com/holoviz/hvplot/pull/1281))
41
+
42
+ Documentation:
43
+
44
+ - Add user guide for working with large time-series datasets ([#1302](https://github.com/holoviz/hvplot/pull/1302))
45
+ - Clarify the geographic user guide ([#1269](https://github.com/holoviz/hvplot/pull/1269), [#1299](https://github.com/holoviz/hvplot/pull/1299))
46
+ - Misc ([#1266](https://github.com/holoviz/hvplot/pull/1266), [#1268](https://github.com/holoviz/hvplot/pull/1268), [#1319](https://github.com/holoviz/hvplot/pull/1319))
47
+
48
+ Infrastructure / Tests:
49
+
50
+ - Migrate to pyproject.toml and improve the contributor experience ([#1296](https://github.com/holoviz/hvplot/pull/1296), [#1322](https://github.com/holoviz/hvplot/pull/1322))
51
+ - Format and lint the code base with `ruff` ([#1320](https://github.com/holoviz/hvplot/pull/1320))
52
+ - Pin intake to version 2.0.0 ([#1275](https://github.com/holoviz/hvplot/pull/1275))
53
+ - Fix the test suite after the latest Dask release ([#1298](https://github.com/holoviz/hvplot/pull/1298))
54
+ - Remove the `examples` folder ([#1287](https://github.com/holoviz/hvplot/pull/1287))
55
+ - Install the tests dependencies primarily with pip ([#1276](https://github.com/holoviz/hvplot/pull/1276))
56
+ - Misc ([#1317](https://github.com/holoviz/hvplot/pull/1317), [#1321](https://github.com/holoviz/hvplot/pull/1321), [#1323](https://github.com/holoviz/hvplot/pull/1323), [#1324](https://github.com/holoviz/hvplot/pull/1324), [#1327](https://github.com/holoviz/hvplot/pull/1327))
57
+
58
+ [Full Changelog](https://github.com/holoviz/hvplot/compare/v0.9.2...v0.9.3)
59
+
5
60
  ## Version 0.9.2 (2024-01-29)
6
61
 
7
62
  The 0.9.2 release is a patch release that brings a few bugfixes and documentation improvements, improving `Polars` support and documentation. Many thanks to @kevinheavey (first contribution!), @MarcoGorelli, @Hoxbro, and @maximlt for their contributions.
@@ -184,8 +184,7 @@
184
184
  " Whether to display a coastline on top of the plot, setting\n",
185
185
  " coastline='10m'/'50m'/'110m' specifies a specific scale.\n",
186
186
  " crs (default=None):\n",
187
- " Coordinate reference system of the data specified as Cartopy\n",
188
- " CRS object, proj.4 string or EPSG code.\n",
187
+ " Coordinate reference system of the data (input projection) specified as a string or integer EPSG code, a CRS or Proj pyproj object, a Cartopy CRS object or class name, a WKT string, or a proj.4 string. Defaults to PlateCarree.\n",
189
188
  " features (default=None): dict or list\n",
190
189
  " A list of features or a dictionary of features and the scale\n",
191
190
  " at which to render it. Available features include 'borders',\n",
@@ -200,6 +199,8 @@
200
199
  " Whether to project the data before plotting (adds initial\n",
201
200
  " overhead but avoids projecting data when plot is dynamically\n",
202
201
  " updated).\n",
202
+ " projection (default=None):\n",
203
+ " Coordinate reference system of the plot (output projection) specified as a string or integer EPSG code, a CRS or Proj pyproj object, a Cartopy CRS object or class name, a WKT string, or a proj.4 string. Defaults to PlateCarree.\n",
203
204
  " tiles (default=False):\n",
204
205
  " Whether to overlay the plot on a tile source. Tiles sources\n",
205
206
  " can be selected by name or a tiles object or class can be passed,\n",
@@ -409,12 +409,12 @@
409
409
  "The API provides various geo-specific options:\n",
410
410
  "\n",
411
411
  "- `coastline` (default=False): Whether to display a coastline on top of the plot, setting `coastline='10m'/'50m'/'110m'` specifies a specific scale\n",
412
- "- `crs` (default=None): Coordinate reference system of the data (input projection) specified as an EPSG code (int or string), pyproj CRS or Proj object, Cartopy CRS object, proj.4 string, or WKT string. Defaults to PlateCarree.\n",
412
+ "- `crs` (default=None): Coordinate reference system of the data (input projection) specified as a string or integer EPSG code, a CRS or Proj pyproj object, a Cartopy CRS object or class name, a WKT string, or a proj.4 string. Defaults to PlateCarree.\n",
413
413
  "- `features` features (default=None): A list of features or a dictionary of features and the scale at which to render it. Available features include 'borders', 'coastline', 'lakes', 'land', 'ocean', 'rivers' and 'states'. Available scales include '10m'/'50m'/'110m'.\n",
414
414
  "- `geo` (default=False): Whether the plot should be treated as geographic (and assume PlateCarree, i.e. lat/lon coordinates)\n",
415
415
  "- `global_extent` (default=False): Whether to expand the plot extent to span the whole globe\n",
416
416
  "- `project` (default=False): Whether to project the data before plotting (adds initial overhead but avoids projecting data when plot is dynamically updated)\n",
417
- "- `projection` (default=None): Coordinate reference system of the plot (output projection) specified as Cartopy CRS object or name.\n",
417
+ "- `projection` (default=None): Coordinate reference system of the plot (output projection) specified as a string or integer EPSG code, a CRS or Proj pyproj object, a Cartopy CRS object or class name, a WKT string, or a proj.4 string. Defaults to PlateCarree.\n",
418
418
  "- `tiles` (default=False): Whether to overlay the plot on a tile source. Accept the following values:\n",
419
419
  " - `True`: OpenStreetMap layer\n",
420
420
  " - `xyzservices.TileProvider` instance (requires [`xyzservices`](https://xyzservices.readthedocs.io/) to be installed)\n",
@@ -203,7 +203,11 @@
203
203
  "cell_type": "code",
204
204
  "execution_count": null,
205
205
  "id": "39ff4ae1",
206
- "metadata": {},
206
+ "metadata": {
207
+ "tags": [
208
+ "hide-cell"
209
+ ]
210
+ },
207
211
  "outputs": [],
208
212
  "source": [
209
213
  "# Cell hidden on the website (hide-cell in tags)\n",
@@ -24,15 +24,8 @@
24
24
  "source": [
25
25
  "import numpy as np\n",
26
26
  "import hvplot.pandas # noqa\n",
27
- "import hvplot.dask # noqa"
28
- ]
29
- },
30
- {
31
- "cell_type": "code",
32
- "execution_count": null,
33
- "metadata": {},
34
- "outputs": [],
35
- "source": [
27
+ "import hvplot.dask # noqa\n",
28
+ "\n",
36
29
  "hvplot.extension('plotly')"
37
30
  ]
38
31
  },
@@ -61,6 +61,7 @@ dependencies:
61
61
  - scipy
62
62
  - scipy>=1.5.3
63
63
  - selenium>=3.141.0
64
+ - setuptools_scm>=6
64
65
  - spatialpandas>=0.4.3
65
66
  - streamz>=0.3.0
66
67
  - xarray
@@ -52,6 +52,7 @@ dependencies:
52
52
  - scikit-image>=0.17.2
53
53
  - scipy>=1.5.3
54
54
  - selenium>=3.141.0
55
+ - setuptools_scm>=6
55
56
  - spatialpandas>=0.4.3
56
57
  - sphinxext-rediraffe
57
58
  - streamz>=0.3.0
@@ -61,6 +61,7 @@ dependencies:
61
61
  - scipy
62
62
  - scipy>=1.5.3
63
63
  - selenium>=3.141.0
64
+ - setuptools_scm>=6
64
65
  - spatialpandas>=0.4.3
65
66
  - streamz>=0.3.0
66
67
  - xarray
@@ -61,6 +61,7 @@ dependencies:
61
61
  - scipy
62
62
  - scipy>=1.5.3
63
63
  - selenium>=3.141.0
64
+ - setuptools_scm>=6
64
65
  - spatialpandas>=0.4.3
65
66
  - streamz>=0.3.0
66
67
  - xarray
@@ -61,6 +61,7 @@ dependencies:
61
61
  - scipy
62
62
  - scipy>=1.5.3
63
63
  - selenium>=3.141.0
64
+ - setuptools_scm>=6
64
65
  - spatialpandas>=0.4.3
65
66
  - streamz>=0.3.0
66
67
  - xarray
@@ -61,6 +61,7 @@ dependencies:
61
61
  - scipy
62
62
  - scipy>=1.5.3
63
63
  - selenium>=3.141.0
64
+ - setuptools_scm>=6
64
65
  - spatialpandas>=0.4.3
65
66
  - streamz>=0.3.0
66
67
  - xarray
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.9.3a2'
16
- __version_tuple__ = version_tuple = (0, 9, 3)
15
+ __version__ = version = '0.10.0rc1'
16
+ __version_tuple__ = version_tuple = (0, 10, 0)
@@ -287,10 +287,10 @@ class HoloViewsConverter:
287
287
  Whether to display a coastline on top of the plot, setting
288
288
  coastline='10m'/'50m'/'110m' specifies a specific scale.
289
289
  crs (default=None):
290
- Coordinate reference system of the data specified as a string
290
+ Coordinate reference system of the data (input projection) specified as a string
291
291
  or integer EPSG code, a CRS or Proj pyproj object, a Cartopy
292
- CRS object, a WKT string, or a proj.4 string. Defaults to
293
- PlateCarree.
292
+ CRS object or class name, a WKT string, or a proj.4 string.
293
+ Defaults to PlateCarree.
294
294
  features (default=None): dict or list
295
295
  A list of features or a dictionary of features and the scale
296
296
  at which to render it. Available features include 'borders',
@@ -306,8 +306,10 @@ class HoloViewsConverter:
306
306
  overhead but avoids projecting data when plot is dynamically
307
307
  updated).
308
308
  projection (default=None): str or Cartopy CRS
309
- Coordinate reference system of the plot specified as Cartopy
310
- CRS object or class name.
309
+ Coordinate reference system of the plot (output projection) specified as a string
310
+ or integer EPSG code, a CRS or Proj pyproj object, a Cartopy
311
+ CRS object or class name, a WKT string, or a proj.4 string.
312
+ Defaults to PlateCarree.
311
313
  tiles (default=False):
312
314
  Whether to overlay the plot on a tile source:
313
315
  - `True`: OpenStreetMap layer
@@ -645,24 +647,8 @@ class HoloViewsConverter:
645
647
  from cartopy import crs as ccrs
646
648
  from geoviews.util import project_extents
647
649
 
648
- if isinstance(projection, str):
649
- all_crs = [
650
- proj
651
- for proj in dir(ccrs)
652
- if callable(getattr(ccrs, proj))
653
- and proj not in ['ABCMeta', 'CRS']
654
- and proj[0].isupper()
655
- or proj == 'GOOGLE_MERCATOR'
656
- ]
657
- if projection in all_crs and projection != 'GOOGLE_MERCATOR':
658
- projection = getattr(ccrs, projection)()
659
- elif projection == 'GOOGLE_MERCATOR':
660
- projection = getattr(ccrs, projection)
661
- else:
662
- raise ValueError(
663
- 'Projection must be defined as cartopy CRS or '
664
- f'one of the following CRS string:\n {all_crs}'
665
- )
650
+ if projection is not None:
651
+ projection = process_crs(projection)
666
652
 
667
653
  self.output_projection = projection or (ccrs.GOOGLE_MERCATOR if tiles else self.crs)
668
654
  if tiles and self.output_projection != ccrs.GOOGLE_MERCATOR:
@@ -1,6 +1,7 @@
1
1
  import re
2
2
  from textwrap import dedent
3
3
 
4
+ import numpy as np
4
5
  import holoviews as hv
5
6
  import pandas as pd
6
7
  import hvplot.pandas
@@ -381,3 +382,9 @@ def test_explorer_code_opts():
381
382
  color_levels=3,
382
383
  )
383
384
  ```""")
385
+
386
+
387
+ def test_explorer_xarray_multi_var_extra_dims_no_coord():
388
+ ds = xr.tutorial.open_dataset('air_temperature')
389
+ ds['lat_bnds'] = (('bnds', 'lat'), np.vstack([ds['lat'], ds['lat']]))
390
+ assert ds.hvplot.explorer()
@@ -260,6 +260,10 @@ def test_check_crs():
260
260
  'input',
261
261
  [
262
262
  '+init=epsg:26911',
263
+ 'PlateCarree',
264
+ 'epsg:6933',
265
+ 6933,
266
+ 'EPSG: 6933',
263
267
  ],
264
268
  )
265
269
  def test_process_crs(input):
@@ -896,6 +896,11 @@ class hvGridExplorer(hvPlotExplorer):
896
896
  ds = ds[data_vars[0]]
897
897
  var_name_suffix = f"['{data_vars[0]}']"
898
898
  else:
899
+ missing_dims = set(ds.dims) - set(ds.coords)
900
+ if missing_dims:
901
+ # fixes https://github.com/holoviz/hvplot/issues/1272
902
+ for dim in missing_dims:
903
+ ds.coords[dim] = np.arange(len(ds[dim]))
899
904
  ds = ds.to_array('variable').transpose(..., 'variable')
900
905
  var_name_suffix = ".to_array('variable').transpose(..., 'variable')"
901
906
  if 'kind' not in params:
@@ -286,24 +286,48 @@ def process_crs(crs):
286
286
  return ccrs.PlateCarree()
287
287
  elif isinstance(crs, ccrs.CRS):
288
288
  return crs
289
+ elif isinstance(crs, str):
290
+ all_crs = [
291
+ proj
292
+ for proj in dir(ccrs)
293
+ if callable(getattr(ccrs, proj))
294
+ and proj not in ['ABCMeta', 'CRS']
295
+ and proj[0].isupper()
296
+ or proj == 'GOOGLE_MERCATOR'
297
+ ]
298
+ if crs in all_crs and crs != 'GOOGLE_MERCATOR':
299
+ return getattr(ccrs, crs)()
300
+ elif crs == 'GOOGLE_MERCATOR':
301
+ return getattr(ccrs, crs)
289
302
  elif isinstance(crs, pyproj.CRS):
290
303
  crs = crs.to_wkt()
291
304
 
292
305
  errors = []
293
- if isinstance(crs, (str, int)): # epsg codes
306
+ if isinstance(crs, (str, int, pyproj.Proj)):
307
+ wkt = crs
308
+ if isinstance(crs, (str, int)): # epsg codes
309
+ try:
310
+ wkt = pyproj.CRS.from_epsg(crs).to_wkt()
311
+ except Exception as e:
312
+ errors.append(e)
294
313
  try:
295
- crs = pyproj.CRS.from_epsg(crs).to_wkt()
314
+ return proj_to_cartopy(wkt) # should be all proj4 or wkt strings
296
315
  except Exception as e:
297
316
  errors.append(e)
298
- if isinstance(crs, (str, pyproj.Proj)): # proj4/wkt strings
317
+
318
+ if isinstance(crs, (str, int)):
319
+ if isinstance(crs, str):
320
+ # pyproj does not expect epsg to be prefixed with `EPSG:`
321
+ crs = crs.upper().replace('EPSG:', '').strip()
299
322
  try:
300
- return proj_to_cartopy(crs)
323
+ return ccrs.epsg(crs)
301
324
  except Exception as e:
302
325
  errors.append(e)
303
326
 
304
327
  raise ValueError(
305
328
  'Projection must be defined as a EPSG code, proj4 string, '
306
- 'WKT string, cartopy CRS, pyproj.Proj, or pyproj.CRS.'
329
+ 'WKT string, cartopy CRS instance, cartopy CRS class name string, '
330
+ 'pyproj.Proj, or pyproj.CRS.'
307
331
  ) from Exception(*errors)
308
332
 
309
333
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hvplot
3
- Version: 0.9.3a2
3
+ Version: 0.10.0rc1
4
4
  Summary: A high-level plotting API for the PyData ecosystem built on HoloViews.
5
5
  Author-email: Philipp Rudiger <developers@holoviz.org>
6
6
  Maintainer-email: HoloViz developers <developers@holoviz.org>
@@ -47,7 +47,7 @@ Requires-Dist: scipy; extra == "tests-core"
47
47
  Requires-Dist: xarray; extra == "tests-core"
48
48
  Provides-Extra: tests
49
49
  Requires-Dist: hvplot[tests-core]; extra == "tests"
50
- Requires-Dist: fugue; extra == "tests"
50
+ Requires-Dist: fugue[sql]; extra == "tests"
51
51
  Requires-Dist: ibis-framework[duckdb]; extra == "tests"
52
52
  Requires-Dist: polars; extra == "tests"
53
53
  Provides-Extra: geo
@@ -64,7 +64,7 @@ Requires-Dist: pygraphviz; extra == "graphviz"
64
64
  Provides-Extra: examples
65
65
  Requires-Dist: dask[dataframe]>=2021.3.0; extra == "examples"
66
66
  Requires-Dist: datashader>=0.6.5; extra == "examples"
67
- Requires-Dist: fugue; extra == "examples"
67
+ Requires-Dist: fugue[sql]; extra == "examples"
68
68
  Requires-Dist: ibis-framework[duckdb]; extra == "examples"
69
69
  Requires-Dist: intake-parquet>=0.2.3; extra == "examples"
70
70
  Requires-Dist: intake-xarray>=0.5.0; extra == "examples"
@@ -105,6 +105,8 @@ Requires-Dist: param>=0.0.1a1; extra == "hvdev"
105
105
  Requires-Dist: pyviz_comms>=0.0.1a1; extra == "hvdev"
106
106
  Provides-Extra: hvdev-geo
107
107
  Requires-Dist: geoviews>=0.0.1a1; extra == "hvdev-geo"
108
+ Provides-Extra: dev-extras
109
+ Requires-Dist: setuptools_scm>=6; extra == "dev-extras"
108
110
 
109
111
  # hvPlot makes data analysis and visualization simple <img src="https://github.com/holoviz/hvplot/blob/main/doc/_static/logo.png?raw=true" style="width:2em;margin-bottom:-15px">
110
112