Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some potential improvements of the installation instructions #3371

Open
seisman opened this issue Aug 4, 2024 · 2 comments · May be fixed by #3506
Open

Some potential improvements of the installation instructions #3371

seisman opened this issue Aug 4, 2024 · 2 comments · May be fixed by #3506
Labels
documentation Improvements or additions to documentation
Milestone

Comments

@seisman
Copy link
Member

seisman commented Aug 4, 2024

Looking at the Installation Instructions, currently four optional dependencies are listed

  • IPython: For embedding the figures in Jupyter notebooks (recommended).
  • Contextily: For retrieving tile maps from the internet.
  • GeoPandas: For using and plotting GeoDataFrame objects.
  • RioXarray: For saving multi-band rasters to GeoTIFFs.

Here are my thoughts:

  1. Install the optional dependencies in the Installing GMT and other dependencies step to have a full-feature PyGMT. There are two options: (1) add optional dependencies when creating the virtual environment; (2) add a separate command: mamba install ipython contextily geopandas rioxarray to install the optional packages after creating the virtual environment.

  2. Are IPython and GeoPandas considered optional dependencies? (1) PyGMT supports GeoPandas objects as inputs but GeoPandas is not imported anywhere in the PyGMT source codes; (2) IPython is needed for embedding figures in Jupyter Notebooks, but as long as users are in a Notebook environment, IPython is always available since it's a dependency of Jupyter.

  3. Some packages like GeoPandas/Shapely/PyArrow, are not directly used in PyGMT, but it's good to let users know that PyGMT supports them.

@seisman seisman added the discussions Need more discussion before taking further actions label Aug 4, 2024
@seisman
Copy link
Member Author

seisman commented Aug 13, 2024

Ping @GenericMappingTools/pygmt-maintainers

@weiji14
Copy link
Member

weiji14 commented Sep 28, 2024

  1. ... (2) add a separate command: mamba install ipython contextily geopandas rioxarray to install the optional packages after creating the virtual environment.

Sure, we can add a tip admonition to show this, similar to how we're showing pip install pygmt[all] here:

pygmt/doc/install.md

Lines 218 to 221 in 89021cd

::: {tip}
You can also run `python -m pip install pygmt[all]` to install pygmt with all of its
optional dependencies.
:::

3. Some packages like GeoPandas/Shapely/PyArrow, are not directly used in PyGMT, but it's good to let users know that PyGMT supports them.

Maybe we could add a section under the Technical References page or somewhere else to mention these integrations? Some of these are hiding in old issues:

Examples of others around the Scientific Python Ecosystem:

@seisman seisman added documentation Improvements or additions to documentation and removed discussions Need more discussion before taking further actions labels Oct 11, 2024
@seisman seisman linked a pull request Oct 11, 2024 that will close this issue
@seisman seisman added this to the 0.14.0 milestone Oct 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants