Skip to main content

A Python library for visualizing geotechnical profiles.

Project description

GeoProfile

Checked with mypy Code style: black Imports: isort

Explore the depths of the Earth with GeoProfile, a comprehensive package designed for geotechnical professionals and researchers. This versatile toolkit is your go-to resource for analyzing and visualizing geotechnical profiles, offering a seamless experience in understanding the complex stratigraphy of the subsurface.

Whether you are involved in civil engineering, environmental science, or geotechnical exploration, GeoProfile is your indispensable companion for unraveling the mysteries beneath the surface. Elevate your geotechnical analysis and make informed decisions with GeoProfile – where geology meets technology.

Installation

To install this package, including the map and gef reading functionality, run:

pip install geoprofile[map, gef]

To skip the installation of the GeoProfile library, in case you do not need it (e.g. only use pure plotting), run:

pip install geoprofile

Contribution

Environment

We recommend developing in Python3.9 with a clean virtual environment (using virtualenv or conda), installing the requirements from the requirements.txt file:

Example using virtualenv and pip to install the dependencies in a new environment .env on Linux:

python -m venv .env
source activate .env/bin/activate
python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install -e .

Documentation

Build the docs:

python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install .
sphinx-build -b html docs public

Note: You'll need to set the NUCLEI_TOKEN environmental variable. You can get your token at: https://cemsbv.crux-nuclei.com

Format

We format our code with black and isort.

black --config "pyproject.toml" src/geoprofile tests notebook docs
isort --settings-path "pyproject.toml" src/geoprofile tests notebook docs

Lint

To maintain code quality we use the GitHub super-linter.

To run the linters locally, run the run_super_linters.sh bash script from the root directory.

UnitTest

Test the software with the use of coverage:

python -m pip install --upgrade pip setuptools
pip install -r requirements.txt
pip install .
coverage run -m pytest

Requirements

Requirements are autogenerated by pip-compile with python 3.9

pip-compile --extra=test --extra=docs --extra=lint --extra=map --extra=gef --output-file=requirements.txt pyproject.toml

To update the requirements within the defined ranges, run:

pip-compile --upgrade --extra=test --extra=docs --extra=lint --extra=map --extra=gef --output-file=requirements.txt pyproject.toml

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

geoprofile-0.1.0.tar.gz (14.2 kB view details)

Uploaded Source

Built Distribution

GeoProfile-0.1.0-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file geoprofile-0.1.0.tar.gz.

File metadata

  • Download URL: geoprofile-0.1.0.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for geoprofile-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4f3c810873e2020b95d489af8428c740e7d60d1aa83a7c6438b0a07d04b71fa1
MD5 7f1cd5b4208b4b9bc75ee7f67c3cf66d
BLAKE2b-256 3321728c2e8468f7b217f3f3a5cca50eace8624e163010dfd9a9847b451dd548

See more details on using hashes here.

File details

Details for the file GeoProfile-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: GeoProfile-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for GeoProfile-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b8ded8852155728a6595c53e5b0d4e76510c6794013ac9297c6bfe8ff4c363d8
MD5 c9ef395b6073a0ff8a995f5fe69fb7bb
BLAKE2b-256 1ca3a27613d5d36309bf75acffefa5dd52de0dd49df9a76bbd4f1cce10a96a47

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page