LinkingLines

LinkingLines: Using the Hough Transform to Cluster Line Segments and Mesoscale Feature Extraction - Published in JOSS (2024)

https://github.com/aikubo/linkinglines

Science Score: 95.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 5 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: wiley.com, joss.theoj.org, zenodo.org
  • Committers with academic emails
    1 of 4 committers (25.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Scientific Fields

Mathematics Computer Science - 88% confidence
Economics Social Sciences - 85% confidence
Last synced: 4 months ago · JSON representation

Repository

Link and Cluster Cartesian Line Segments

Basic Info
  • Host: GitHub
  • Owner: aikubo
  • License: mit
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 8.23 MB
Statistics
  • Stars: 2
  • Watchers: 2
  • Forks: 3
  • Open Issues: 0
  • Releases: 3
Created over 5 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Authors

README.md

Welcome to LinkingLines!

status DOI PyPI ReadtheDocs License

Read the Full documentation on ReadtheDocs!

1. Introduction

Welcome to the documentation for our Python module that performs the Hough Transform on lines from geospatial data, clusters it using Agglomerative Clustering. This module also includes custom plotting scripts and feature extraction methods to help you analyze and visualize your data effectively.

This code was used to create the results published in Kubo Hutchison et al., 2023. Initially, it was designed to link together mapped dike segments in Cartesian space to find their true lengths. This code can be applied to any linear features including roads, fractures, and other types of linear data.

  • Data Clustering: Apply Agglomerative Clustering to group similar data points, this can be used for data reduction, analysis, and mapping.

  • Data Visualization: Custom plotting scripts help you visualize and analyze your data, making it easier to identify patterns and anomalies.

  • Feature Extraction: Extract meaningful features from clustered data to perform further analysis, such as linear or radial type features.

Full documentation can be found on ReadTheDocs

2. Installation

To use this module, make sure you have Python installed (preferably Python 3.x). You can install the required packages using pip:

bash pip install linkinglines

3. Quick Start

```python import pandas as pd import numpy as np import matplotlib.pyplot as plt import linkinglines as ll

data=ll.readFile('path/to/data')

dtheta=2 #degrees drho=500 #meters

dikeset, Z=ll.AggCluster(data) lines,evaluation=examineCluster(data) fig,ax=DotsLines(lines, ColorBy='AvgTheta')

```

We have three examples: 1. In-depth tutorial with Hough transform, clustering, and feature extraction using Spanish Peaks Data CSV file. 2. Hough Transform and feature extraction on Venus lineament data shape file. 3. Hough Transform on fracture data geoJSON.

Data from: 1. https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/2022GC010842 2. https://pubs.usgs.gov/sim/3121/ 3. https://doi.org/10.5281/zenodo.7919843

4. Contributing Guidelines

If you find bugs or issues please open up an issues. We also welcome requests for additional features.

If you would like to contribute code please do so in a separate branch and open up an issue describing your contribution.

git clone git@github.com:USER/LinkingLines.git git checkout my-development-branch

We recommend using a virtual environment to manage packages. We use poetry to manage dependencies and building. See more about poetry.

``` pipx install poetry # you may need to install pipx first

cd linkinglines # go to the repo

poetry install --with test,dev # install in editable mode

add your code

poetry run pytest # test code locally

```

Before submitting your pull request please verify the following:

  1. Code is documented in NumPy Docstring Style
  2. Code is tested and passes test
    • To run the tests please go to "/tests" and run poetry run pytest or pytest
    • Add your test code to any file with the name test
    • More here on pytest and testing practices
  3. Open an issue and pull request
  4. After your pull request the code will be reviewed by maintainer (namely @aikubo).
  5. After passing review and automated tests it will be added to the next release and published to pypi.

Owner

  • Name: Allison Kubo
  • Login: aikubo
  • Kind: user
  • Location: University of Oregon

PhD Candidate at the University of Oregon Coadvised by Joe Dufek & Leif Karlstrom

JOSS Publication

LinkingLines: Using the Hough Transform to Cluster Line Segments and Mesoscale Feature Extraction
Published
June 07, 2024
Volume 9, Issue 98, Page 6147
Authors
Allison Kubo Hutchison ORCID
University of Oregon, Eugene, OR, USA
Leif Karlstrom ORCID
University of Oregon, Eugene, OR, USA
Tushar Mittal ORCID
Pennsylvania State University, University Park, PA, USA
Editor
Hugo Ledoux ORCID
Tags
python hough transform earth science clustering

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 195
  • Total Committers: 4
  • Avg Commits per committer: 48.75
  • Development Distribution Score (DDS): 0.026
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Allison Kubo Hutchison a****o@g****m 190
nialov n****n@g****m 3
Hugo Ledoux h****x@t****l 1
Allison Kubo Hutchison a****h@p****n 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 9
  • Total pull requests: 29
  • Average time to close issues: 2 months
  • Average time to close pull requests: 6 days
  • Total issue authors: 2
  • Total pull request authors: 3
  • Average comments per issue: 1.33
  • Average comments per pull request: 0.21
  • Merged pull requests: 29
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • nialov (5)
  • evetion (4)
Pull Request Authors
  • aikubo (33)
  • nialov (6)
  • hugoledoux (2)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 15 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 4
  • Total maintainers: 1
pypi.org: linkinglines

Process linear geospatial data and link them using the Hough Transform and Agglomerative Clustering

  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 15 Last month
Rankings
Dependent packages count: 10.1%
Dependent repos count: 21.6%
Forks count: 22.7%
Average: 27.3%
Stargazers count: 38.8%
Downloads: 43.4%
Maintainers (1)
Last synced: 4 months ago

Dependencies

requirements.txt pypi
  • alabaster0.7.12py_0conda-forge *
  • alsa-lib1.2.6.1h7f98852_0conda-forge *
  • arrow1.2.3pyhd8ed1ab_0conda-forge *
  • astroid2.12.9py310hff52083_0conda-forge *
  • atomicwrites1.4.1pyhd8ed1ab_0conda-forge *
  • attr2.5.1h166bdaf_1conda-forge *
  • attrs22.1.0pyh71513ae_1conda-forge *
  • autopep81.6.0pyhd8ed1ab_1conda-forge *
  • babel2.10.3pyhd8ed1ab_0conda-forge *
  • backcall0.2.0pyh9f0ad1d_0conda-forge *
  • backports.functools_lru_cache1.6.4pyhd8ed1ab_0conda-forge *
  • backports1.0py_2conda-forge *
  • beautifulsoup44.11.1pyha770c72_0conda-forge *
  • binaryornot0.4.4py_1conda-forge *
  • black22.6.0py310hff52083_2conda-forge *
  • bleach5.0.1pyhd8ed1ab_0conda-forge *
  • brotli-bin1.0.9h166bdaf_7conda-forge *
  • brotli1.0.9h166bdaf_7conda-forge *
  • brotlipy0.7.0py310h5764c6d_1004conda-forge *
  • bzip21.0.8h7f98852_4conda-forge *
  • c-ares1.18.1h7f98852_0conda-forge *
  • ca-certificates2022.6.15ha878542_0conda-forge *
  • certifi2022.6.15pyhd8ed1ab_1conda-forge *
  • cffi1.15.1py310h255011f_0conda-forge *
  • chardet5.0.0py310hff52083_0conda-forge *
  • charset-normalizer2.1.1pyhd8ed1ab_0conda-forge *
  • click8.1.3py310hff52083_0conda-forge *
  • cloudpickle2.1.0pyhd8ed1ab_0conda-forge *
  • colorama0.4.5pyhd8ed1ab_0conda-forge *
  • cookiecutter2.1.1pyh6c4a22f_0conda-forge *
  • cryptography37.0.4py310h597c629_0conda-forge *
  • cycler0.11.0pyhd8ed1ab_0conda-forge *
  • dbus1.13.6h5008d03_3conda-forge *
  • debugpy1.6.3py310hd8f1fbe_0conda-forge *
  • decorator5.1.1pyhd8ed1ab_0conda-forge *
  • defusedxml0.7.1pyhd8ed1ab_0conda-forge *
  • diff-match-patch20200713pyh9f0ad1d_0conda-forge *
  • dill0.3.5.1pyhd8ed1ab_0conda-forge *
  • docutils0.19py310hff52083_0conda-forge *
  • entrypoints0.4pyhd8ed1ab_0conda-forge *
  • expat2.4.8h27087fc_0conda-forge *
  • fftw3.3.10nompi_hf0379b8_105conda-forge *
  • flake84.0.1pyhd8ed1ab_2conda-forge *
  • font-ttf-dejavu-sans-mono2.37hab24e00_0conda-forge *
  • font-ttf-inconsolata3.000h77eed37_0conda-forge *
  • font-ttf-source-code-pro2.038h77eed37_0conda-forge *
  • font-ttf-ubuntu0.83hab24e00_0conda-forge *
  • fontconfig2.14.0h8e229c2_0conda-forge *
  • fonts-conda-ecosystem10conda-forge *
  • fonts-conda-forge10conda-forge *
  • fonttools4.37.1py310h5764c6d_0conda-forge *
  • freetype2.12.1hca18f0e_0conda-forge *
  • gettext0.19.8.1h73d1719_1008conda-forge *
  • giflib5.2.1h36c2ea0_2conda-forge *
  • glib-tools2.72.1h6239696_0conda-forge *
  • glib2.72.1h6239696_0conda-forge *
  • gst-plugins-base1.20.3hf6a322e_0conda-forge *
  • gstreamer1.20.3hd4edc92_1conda-forge *
  • icu70.1h27087fc_0conda-forge *
  • idna3.3pyhd8ed1ab_0conda-forge *
  • imagesize1.4.1pyhd8ed1ab_0conda-forge *
  • importlib-metadata4.11.4py310hff52083_0conda-forge *
  • importlib_resources5.9.0pyhd8ed1ab_0conda-forge *
  • inflection0.5.1pyh9f0ad1d_0conda-forge *
  • intervaltree3.0.2py_0conda-forge *
  • ipykernel6.15.2pyh210e3f2_0conda-forge *
  • ipython7.33.0py310hff52083_0conda-forge *
  • ipython_genutils0.2.0py_1conda-forge *
  • isort5.10.1pyhd8ed1ab_0conda-forge *
  • jack1.9.18h8c3723f_1002conda-forge *
  • jaraco.classes3.2.2pyhd8ed1ab_0conda-forge *
  • jedi0.18.1pyhd8ed1ab_2conda-forge *
  • jeepney0.8.0pyhd8ed1ab_0conda-forge *
  • jellyfish0.9.0py310h5764c6d_1conda-forge *
  • jinja2-time0.2.0pyhd8ed1ab_3conda-forge *
  • jinja23.1.2pyhd8ed1ab_1conda-forge *
  • joblib1.1.0pyhd8ed1ab_0conda-forge *
  • jpeg9eh166bdaf_2conda-forge *
  • jsonschema4.15.0pyhd8ed1ab_0conda-forge *
  • jupyter_client7.3.5pyhd8ed1ab_0conda-forge *
  • jupyter_core4.11.1py310hff52083_0conda-forge *
  • jupyterlab_pygments0.2.2pyhd8ed1ab_0conda-forge *
  • keyring23.9.1py310hff52083_0conda-forge *
  • keyutils1.6.1h166bdaf_0conda-forge *
  • kiwisolver1.4.4py310hbf28c38_0conda-forge *
  • krb51.19.3h3790be6_0conda-forge *
  • lazy-object-proxy1.7.1py310h5764c6d_1conda-forge *
  • lcms22.12hddcbb42_0conda-forge *
  • ld_impl_linux-642.36.1hea4e1c9_2conda-forge *
  • lerc4.0.0h27087fc_0conda-forge *
  • libblas3.9.016_linux64_openblasconda-forge *
  • libbrotlicommon1.0.9h166bdaf_7conda-forge *
  • libbrotlidec1.0.9h166bdaf_7conda-forge *
  • libbrotlienc1.0.9h166bdaf_7conda-forge *
  • libcap2.64ha37c62d_0conda-forge *
  • libcblas3.9.016_linux64_openblasconda-forge *
  • libclang1314.0.6default_h3a83d3e_0conda-forge *
  • libclang14.0.6default_h2e3cab8_0conda-forge *
  • libcups2.3.3h3e49a29_2conda-forge *
  • libcurl7.83.1h7bff187_0conda-forge *
  • libdb6.2.32h9c3ff4c_0conda-forge *
  • libdeflate1.13h166bdaf_0conda-forge *
  • libedit3.1.20191231he28a2e2_2conda-forge *
  • libev4.33h516909a_1conda-forge *
  • libevent2.1.10h9b69904_4conda-forge *
  • libffi3.4.2h7f98852_5conda-forge *
  • libflac1.3.4h27087fc_0conda-forge *
  • libgcc-ng12.1.0h8d9b700_16conda-forge *
  • libgfortran-ng12.1.0h69a702a_16conda-forge *
  • libgfortran512.1.0hdcd56e2_16conda-forge *
  • libglib2.72.1h2d90d5f_0conda-forge *
  • libgomp12.1.0h8d9b700_16conda-forge *
  • libiconv1.16h516909a_0conda-forge *
  • liblapack3.9.016_linux64_openblasconda-forge *
  • libllvm1414.0.6he0ac6c6_0conda-forge *
  • libnghttp21.47.0hdcd2b5c_1conda-forge *
  • libnsl2.0.0h7f98852_0conda-forge *
  • libogg1.3.4h7f98852_1conda-forge *
  • libopenblas0.3.21pthreads_h78a6416_3conda-forge *
  • libopus1.3.1h7f98852_1conda-forge *
  • libpng1.6.37h753d276_4conda-forge *
  • libpq14.5hd77ab85_0conda-forge *
  • libsndfile1.0.31h9c3ff4c_1conda-forge *
  • libsodium1.0.18h36c2ea0_1conda-forge *
  • libspatialindex1.9.3h9c3ff4c_4conda-forge *
  • libsqlite3.39.3h753d276_0conda-forge *
  • libssh21.10.0haa6b8db_3conda-forge *
  • libstdcxx-ng12.1.0ha89aaad_16conda-forge *
  • libtiff4.4.0h0e0dad5_3conda-forge *
  • libtool2.4.6h9c3ff4c_1008conda-forge *
  • libudev1249h166bdaf_4conda-forge *
  • libuuid2.32.1h7f98852_1000conda-forge *
  • libvorbis1.3.7h9c3ff4c_0conda-forge *
  • libwebp-base1.2.4h166bdaf_0conda-forge *
  • libwebp1.2.4h522a892_0conda-forge *
  • libxcb1.13h7f98852_1004conda-forge *
  • libxkbcommon1.0.3he3ba5ed_0conda-forge *
  • libxml22.9.14h22db469_4conda-forge *
  • libxslt1.1.35h8affb1d_0conda-forge *
  • libzlib1.2.12h166bdaf_2conda-forge *
  • lxml4.9.1py310h5764c6d_0conda-forge *
  • markupsafe2.1.1py310h5764c6d_1conda-forge *
  • matplotlib-base3.5.3py310h8d5ebf3_2conda-forge *
  • matplotlib-inline0.1.6pyhd8ed1ab_0conda-forge *
  • matplotlib-label-lines0.5.1pypi_0pypi *
  • matplotlib3.5.3py310hff52083_2conda-forge *
  • mccabe0.6.1py_1conda-forge *
  • mistune2.0.4pyhd8ed1ab_0conda-forge *
  • more-itertools8.14.0pyhd8ed1ab_0conda-forge *
  • munkres1.1.4pyh9f0ad1d_0conda-forge *
  • mypy_extensions0.4.3py310hff52083_5conda-forge *
  • mysql-common8.0.30haf5c9bc_1conda-forge *
  • mysql-libs8.0.30h28c427c_1conda-forge *
  • nbclient0.6.7pyhd8ed1ab_0conda-forge *
  • nbconvert-core7.0.0pyhd8ed1ab_0conda-forge *
  • nbconvert-pandoc7.0.0pyhd8ed1ab_0conda-forge *
  • nbconvert7.0.0pyhd8ed1ab_0conda-forge *
  • nbformat5.4.0pyhd8ed1ab_0conda-forge *
  • ncurses6.3h27087fc_1conda-forge *
  • nest-asyncio1.5.5pyhd8ed1ab_0conda-forge *
  • nspr4.32h9c3ff4c_1conda-forge *
  • nss3.78h2350873_0conda-forge *
  • numpy1.23.2py310h53a5b5f_0conda-forge *
  • numpydoc1.4.0pyhd8ed1ab_1conda-forge *
  • openjpeg2.5.0h7d73246_1conda-forge *
  • openssl1.1.1qh166bdaf_0conda-forge *
  • packaging21.3pyhd8ed1ab_0conda-forge *
  • pandas1.4.4py310h769672d_0conda-forge *
  • pandoc2.19.2ha770c72_0conda-forge *
  • pandocfilters1.5.0pyhd8ed1ab_0conda-forge *
  • parso0.8.3pyhd8ed1ab_0conda-forge *
  • pathspec0.10.1pyhd8ed1ab_0conda-forge *
  • patsy0.5.2pyhd8ed1ab_0conda-forge *
  • pcre8.45h9c3ff4c_0conda-forge *
  • pexpect4.8.0pyh9f0ad1d_2conda-forge *
  • pickleshare0.7.5py_1003conda-forge *
  • pillow9.2.0py310hbd86126_2conda-forge *
  • pip22.2.2pyhd8ed1ab_0conda-forge *
  • pkgutil-resolve-name1.3.10pyhd8ed1ab_0conda-forge *
  • platformdirs2.5.2pyhd8ed1ab_1conda-forge *
  • pluggy1.0.0py310hff52083_3conda-forge *
  • ply3.11py_1conda-forge *
  • portaudio19.6.0h57a0ea0_5conda-forge *
  • proj9.0.1h93bde94_1conda-forge *
  • prompt-toolkit3.0.31pyha770c72_0conda-forge *
  • psutil5.9.2py310h5764c6d_0conda-forge *
  • pthread-stubs0.4h36c2ea0_1001conda-forge *
  • ptyprocess0.7.0pyhd3deb0d_0conda-forge *
  • pulseaudio14.0h7f54b18_8conda-forge *
  • pycodestyle2.8.0pyhd8ed1ab_0conda-forge *
  • pycparser2.21pyhd8ed1ab_0conda-forge *
  • pydocstyle6.1.1pyhd8ed1ab_0conda-forge *
  • pyflakes2.4.0pyhd8ed1ab_0conda-forge *
  • pygments2.13.0pyhd8ed1ab_0conda-forge *
  • pylint2.15.2pyhd8ed1ab_0conda-forge *
  • pyls-spyder0.4.0pyhd8ed1ab_0conda-forge *
  • pyopenssl22.0.0pyhd8ed1ab_0conda-forge *
  • pyparsing3.0.9pyhd8ed1ab_0conda-forge *
  • pyproj3.3.1py310hf94497c_1conda-forge *
  • pyqt5-sip12.11.0py310hd8f1fbe_0conda-forge *
  • pyqt5.15.7py310h29803b5_0conda-forge *
  • pyqtwebengine5.15.7py310h29803b5_0conda-forge *
  • pyrsistent0.18.1py310h5764c6d_1conda-forge *
  • pysocks1.7.1pyha2e5f31_6conda-forge *
  • python-dateutil2.8.2pyhd8ed1ab_0conda-forge *
  • python-fastjsonschema2.16.1pyhd8ed1ab_0conda-forge *
  • python-lsp-black1.2.1pyhd8ed1ab_0conda-forge *
  • python-lsp-jsonrpc1.0.0pyhd8ed1ab_0conda-forge *
  • python-lsp-server1.5.0pyhd8ed1ab_0conda-forge *
  • python-slugify6.1.2pyhd8ed1ab_0conda-forge *
  • python3.10.6h582c2e5_0_cpythonconda-forge *
  • python_abi3.102_cp310conda-forge *
  • pytoolconfig1.2.2pyhd8ed1ab_0conda-forge *
  • pytz2022.2.1pyhd8ed1ab_0conda-forge *
  • pyxdg0.28pyhd8ed1ab_0conda-forge *
  • pyyaml6.0py310h5764c6d_4conda-forge *
  • pyzmq23.2.1py310h330234f_0conda-forge *
  • qdarkstyle3.0.3pyhd8ed1ab_0conda-forge *
  • qstylizer0.2.2pyhd8ed1ab_0conda-forge *
  • qt-main5.15.4ha5833f6_2conda-forge *
  • qt-webengine5.15.4hcbadb6c_3conda-forge *
  • qtawesome1.1.1pyhd8ed1ab_0conda-forge *
  • qtconsole-base5.3.2pyha770c72_0conda-forge *
  • qtconsole5.3.2pyhd8ed1ab_0conda-forge *
  • qtpy2.2.0pyhd8ed1ab_0conda-forge *
  • readline8.1.2h0f457ee_0conda-forge *
  • requests2.28.1pyhd8ed1ab_1conda-forge *
  • rope1.3.0pyhd8ed1ab_0conda-forge *
  • rtree1.0.0py310hbdcdc62_1conda-forge *
  • scikit-learn1.1.2py310h0c3af53_0conda-forge *
  • scipy1.9.1py310hdfbd76f_0conda-forge *
  • seaborn-base0.12.0pyhd8ed1ab_0conda-forge *
  • seaborn0.12.0hd8ed1ab_0conda-forge *
  • secretstorage3.3.3py310hff52083_0conda-forge *
  • setuptools65.3.0pyhd8ed1ab_1conda-forge *
  • sip6.6.2py310hd8f1fbe_0conda-forge *
  • six1.16.0pyh6c4a22f_0conda-forge *
  • snowballstemmer2.2.0pyhd8ed1ab_0conda-forge *
  • sortedcontainers2.4.0pyhd8ed1ab_0conda-forge *
  • soupsieve2.3.2.post1pyhd8ed1ab_0conda-forge *
  • sphinx5.1.1pyhd8ed1ab_1conda-forge *
  • sphinxcontrib-applehelp1.0.2py_0conda-forge *
  • sphinxcontrib-devhelp1.0.2py_0conda-forge *
  • sphinxcontrib-htmlhelp2.0.0pyhd8ed1ab_0conda-forge *
  • sphinxcontrib-jsmath1.0.1py_0conda-forge *
  • sphinxcontrib-qthelp1.0.3py_0conda-forge *
  • sphinxcontrib-serializinghtml1.1.5pyhd8ed1ab_2conda-forge *
  • spyder-kernels2.3.3py310hff52083_0conda-forge *
  • spyder5.3.3py310hff52083_0conda-forge *
  • sqlite3.39.3h4ff8645_0conda-forge *
  • statsmodels0.13.2py310hde88566_0conda-forge *
  • text-unidecode1.3py_0conda-forge *
  • textdistance4.4.0pyhd8ed1ab_0conda-forge *
  • threadpoolctl3.1.0pyh8a188c0_0conda-forge *
  • three-merge0.1.1pyh9f0ad1d_0conda-forge *
  • tinycss21.1.1pyhd8ed1ab_0conda-forge *
  • tk8.6.12h27826a3_0conda-forge *
  • toml0.10.2pyhd8ed1ab_0conda-forge *
  • tomli2.0.1pyhd8ed1ab_0conda-forge *
  • tomlkit0.11.4pyha770c72_0conda-forge *
  • tornado6.2py310h5764c6d_0conda-forge *
  • traitlets5.3.0pyhd8ed1ab_0conda-forge *
  • typing-extensions4.3.0hd8ed1ab_0conda-forge *
  • typing3.10.0.0pyhd8ed1ab_0conda-forge *
  • typing_extensions4.3.0pyha770c72_0conda-forge *
  • tzdata2022ch191b570_0conda-forge *
  • ujson5.4.0py310hd8f1fbe_0conda-forge *
  • unicodedata214.0.0py310h5764c6d_1conda-forge *
  • unidecode1.3.4pyhd8ed1ab_0conda-forge *
  • urllib31.26.11pyhd8ed1ab_0conda-forge *
  • watchdog2.1.9py310hff52083_0conda-forge *
  • wcwidth0.2.5pyh9f0ad1d_2conda-forge *
  • webencodings0.5.1py_1conda-forge *
  • whatthepatch1.0.2pyhd8ed1ab_0conda-forge *
  • wheel0.37.1pyhd8ed1ab_0conda-forge *
  • wrapt1.14.1py310h5764c6d_0conda-forge *
  • wurlitzer3.0.2pyhd8ed1ab_2conda-forge *
  • xcb-util-image0.4.0h166bdaf_0conda-forge *
  • xcb-util-keysyms0.4.0h166bdaf_0conda-forge *
  • xcb-util-renderutil0.3.9h166bdaf_0conda-forge *
  • xcb-util-wm0.4.1h166bdaf_0conda-forge *
  • xcb-util0.4.0h166bdaf_0conda-forge *
  • xorg-libxau1.0.9h7f98852_0conda-forge *
  • xorg-libxdmcp1.1.3h7f98852_0conda-forge *
  • xz5.2.6h166bdaf_0conda-forge *
  • yaml0.2.5h7f98852_2conda-forge *
  • yapf0.32.0pyhd8ed1ab_0conda-forge *
  • zeromq4.3.4h9c3ff4c_1conda-forge *
  • zipp3.8.1pyhd8ed1ab_0conda-forge *
  • zstd1.5.2h6239696_4conda-forge *
.github/workflows/draft-pdf.yml actions
  • actions/checkout v4 composite
  • actions/upload-artifact v1 composite
  • openjournals/openjournals-draft-action master composite
.github/workflows/pipy_release.yml actions
  • actions/checkout master composite
  • actions/setup-python v3 composite
  • pypa/gh-action-pypi-publish master composite
pyproject.toml pypi
  • matplotlib >=3.7.2
  • matplotlib_label_lines >=0.6.0
  • numpy >=1.25.2
  • pandas >=2.0.3
  • pyproj >=3.6.0
  • scikit_learn >=1.3.0
  • scipy >=1.11.2
  • seaborn >=0.12.2
  • statsmodels >=0.14.0
rtd_requirements.txt pypi
  • ipykernel *
  • jupyterlab ==4.0.6
  • linkinglines *
  • matplotlib ==3.7.2
  • matplotlib_label_lines ==0.6.0
  • myst-nb ==0.17.2
  • myst-parser *
  • nbsphinx ==0.9.3
  • notebook ==7.0.4
  • numpy ==1.25.2
  • pandas ==2.0.3
  • pyproj ==3.6.0
  • scikit_learn ==1.3.0
  • scipy ==1.11.2
  • seaborn ==0.12.2
  • statsmodels ==0.14.0