pyrolite

pyrolite: Python for geochemistry - Published in JOSS (2020)

https://github.com/morganjwilliams/pyrolite

Science Score: 100.0%

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

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

Keywords

chemistry data-science geochemical-data geochemistry geoscience pyrolite ternary-diagrams

Scientific Fields

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

Repository

A set of tools for getting the most from your geochemical data.

Basic Info
Statistics
  • Stars: 148
  • Watchers: 5
  • Forks: 44
  • Open Issues: 12
  • Releases: 27
Topics
chemistry data-science geochemical-data geochemistry geoscience pyrolite ternary-diagrams
Created over 7 years ago · Last pushed 12 months ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation

README.md

pyrolite

pyrolite Logo

pyrolite Documentation pyOpenSci DOI License: CSIRO Modified BSD/MIT License Try pyrolite on Binder Chat on Gitter

pyrolite is a set of tools for making the most of your geochemical data.

The python package includes functions to work with compositional data, to transform geochemical variables (e.g. elements to oxides), functions for common plotting tasks (e.g. spiderplots, ternary diagrams, bivariate and ternary density diagrams), and numerous auxiliary utilities.

pyrolite is principally developed for use in geochemical research, but is also well suited to being incorporated into university-level geochemistry and petrology classes which wish to include a little Python. The documentation is continually evolving, and more examples and tutorials will gradually be added (feel free to request features or examples; see Contributing below).

Install

PyPI Compatible Python Versions pyrolite downloads

bash pip install pyrolite

If you want the most up to date development version, you can instead install directly from the GitHub repo. Note that breaking changes occur on this branch, and is not guaranteed to remain stable (check the Development and Build Status below). If you still want to try out the most recent bugfixes and yet-to-be-released features, you can install this version with:

bash pip install git+git://github.com/morganjwilliams/pyrolite.git@develop#egg=pyrolite

For more information, see the documentation's installation page, and the Getting Started Guide.

Examples

Check out the documentation for galleries of examples and tutorials. The corresponding sources of these examples exist as marked-up .py files in this repository (which get converted to Jupyter notebooks on ReadTheDocs); you can find them under the folders docs/source/gallery/examples and docs/source/gallery/tutorials.

Contributing

The long-term aim of this project is to be designed, built and supported by (and for) the geochemistry community. The project welcomes feature requests, bug reports and contributions to the code base, documentation and test suite. We're happy to help onboard new contributors and walk you through the process. Check out the Issues Board to get an idea of some of the some of the currently identified bugs and things we're looking to work on. For more information, see the documentation, particularly the Contributing page and Code of Conduct.

For a list of people who have helped build and improve pyrolite, check out the Contributors page.

If you'd like an idea of where the project might be heading in the near future, have a look at the current roadmap.

Citation

DOI Archive

If you use pyrolite extensively for your research, citation of the software would be particularly appreciated. It helps quantify the impact of the project (assisting those contributing through paid and volunteer work), and is one way to get the message out and help build the pyrolite community. For information on citing pyrolite, see the relevant docs page.

Development & Build Status

Formatted with Black Code Quality

| main | develop | |:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| | Unit Tests on main | Unit Tests on Develop | | Coverage Status | Coverage Status |

Maintainer: Morgan Williams (morgan.williams at csiro.au)

Owner

  • Name: Morgan Williams
  • Login: morganjwilliams
  • Kind: user
  • Location: VIC, Australia
  • Company: CSIRO Mineral Resources

JOSS Publication

pyrolite: Python for geochemistry
Published
June 09, 2020
Volume 5, Issue 50, Page 2314
Authors
Morgan J. Williams ORCID
CSIRO Mineral Resources
Louise Schoneveld ORCID
CSIRO Mineral Resources
Yajing Mao ORCID
Institute of Geology and Geophysics, Chinese Academy of Geosciences
Jens Klump ORCID
CSIRO Mineral Resources
Justin Gosses ORCID
NASA Johnson Space Center
Hayden Dalton ORCID
School of Earth Science, University of Melbourne
Adam Bath ORCID
CSIRO Mineral Resources
Steve Barnes ORCID
CSIRO Mineral Resources
Editor
Arfon Smith ORCID
Tags
geochemistry geology mineralogy petrology compositional data

Citation (CITATION.cff)

cff-version: 1.2.0
title: 'morganjwilliams/pyrolite: 0.3.5.post0'
message: Please cite the following works when using this software.
type: software
authors:
  - family-names: Williams 
    given-names: Morgan
    orcid: 'https://orcid.org/0000-0003-4764-9555'
  - family-names: Buckle
    given-names: Tom
  - family-names: Myhill
    given-names: Bob
    orcid: 'https://orcid.org/0000-0001-9489-5236'
  - family-names: Shi
    given-names: Sarah
    orcid: 'https://orcid.org/0009-0004-8997-7287'
  - family-names: Nathwani
    given-names: Chetan
    orcid: 'https://orcid.org/0000-0003-1208-9041'
  - family-names: Piette Lauziere
    given-names: Nicolas
    orcid: 'https://orcid.org/0000-0003-2812-0357'
  - family-names: Lexa
    given-names: Ondrej
    orcid: 'https://orcid.org/0000-0003-4616-9154'
  - family-names: Schoneveld
    given-names: Louise
    orcid: 'https://orcid.org/0000-0002-9324-1676'
  - family-names: Afonso Rodrigues
    given-names: Angela
    orcid: 'https://orcid.org/0000-0003-3402-9621'
  - family-names: Mues
    given-names: Malte
    orcid: 'https://orcid.org/0000-0002-6291-9886'
  - family-names: Bentley
    given-names: Martin
  - family-names: Gentilini
    given-names: Alessandro
  - family-names: Scott
    given-names: Richard
identifiers:
  - type: doi
    value: 10.5281/ZENODO.2545106
  - type: url
    value: 'https://zenodo.org/doi/10.5281/zenodo.2545106'
url: 'https://zenodo.org/doi/10.5281/zenodo.2545106'
version: 0.3.5.post0
date-released: '2024-02-28'
doi: 10.5281/ZENODO.2545106
preferred-citation:
  authors:
    - family-names: Williams
      given-names: Morgan
      orcid: 'https://orcid.org/0000-0003-4764-9555'
    - family-names: Schoneveld
      given-names: Louise
      orcid: 'https://orcid.org/0000-0002-9324-1676'
    - family-names: Mao
      given-names: Ya-Jing
      orcid: 'https://orcid.org/0000-0002-2725-2158'
    - family-names: Klump
      given-names: Jens
      occid: 'https://orcid.org/0000-0001-5911-6022'
    - family-names: Gosses
      given-names: Justin
      orcid: 'https://orcid.org/0000-0002-5351-7295'
    - family-names: Dalton
      given-names: Hayden
      orcid: 'https://orcid.org/0000-0003-2114-9894'
    - family-names: Bath
      given-names: Adam
      orcid: 'https://orcid.org/0000-0003-0882-0807'
    - family-names: Barnes
      given-names: Steve
      orcid: 'https://orcid.org/0000-0002-4912-9177'
  doi: 10.21105/joss.02314
  identifiers:
    - type: doi
      value: 10.21105/joss.02314
    - type: url
      value: 'http://dx.doi.org/10.21105/joss.02314'
    - type: other
      value: 'urn:issn:2475-9066'
  title: 'pyrolite: Python for geochemistry'
  url: 'http://dx.doi.org/10.21105/joss.02314'
  database: Crossref
  date-published: '2020-06-09'
  year: 2020
  month: 6
  issn: 2475-9066
  issue: '50'
  journal: Journal of Open Source Software
  publisher:
    name: The Open Journal
  start: '2314'
  type: article
  volume: '5'

GitHub Events

Total
  • Create event: 1
  • Issues event: 8
  • Release event: 1
  • Watch event: 18
  • Issue comment event: 8
  • Push event: 29
  • Fork event: 4
Last Year
  • Create event: 1
  • Issues event: 8
  • Release event: 1
  • Watch event: 18
  • Issue comment event: 8
  • Push event: 29
  • Fork event: 4

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 1,989
  • Total Committers: 16
  • Avg Commits per committer: 124.313
  • Development Distribution Score (DDS): 0.208
Past Year
  • Commits: 52
  • Committers: 3
  • Avg Commits per committer: 17.333
  • Development Distribution Score (DDS): 0.096
Top Committers
Name Email Commits
Morgan Williams m****s@h****m 1,575
Morgan Williams m****s@c****u 332
Tom Buckle t****e@g****m 20
Bob Myhill m****b@g****m 16
Kaarel Mänd k****d@u****e 12
Sarah Shi s****i@g****m 11
ChetanNathwani 8****i 4
NicolasPietteLauziere 7****e 4
Ondrej Lexa l****j@g****m 3
Louise Schoneveld 4****2 3
Angela Afonso Rodrigues a****s@g****m 2
Malte Mues m****s@g****m 2
Martin Bentley m****b@m****t 2
Alessandro Gentilini a****i@g****m 1
Louise s****7@c****u 1
RichardScottOZ 7****Z 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 69
  • Total pull requests: 32
  • Average time to close issues: 5 months
  • Average time to close pull requests: 25 days
  • Total issue authors: 20
  • Total pull request authors: 15
  • Average comments per issue: 3.32
  • Average comments per pull request: 3.41
  • Merged pull requests: 27
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 0
  • Average time to close issues: 2 days
  • Average time to close pull requests: N/A
  • Issue authors: 2
  • Pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • morganjwilliams (43)
  • sarahshi (3)
  • mtb-za (2)
  • tectoni (2)
  • JustinGOSSES (2)
  • bobmyhill (2)
  • alessandro-gentilini (1)
  • bomtuckle (1)
  • PennyWieser (1)
  • Elphick (1)
  • anrho87 (1)
  • kaarelmand (1)
  • ondrolexa (1)
  • gdma1977 (1)
  • luferodrigues (1)
Pull Request Authors
  • bomtuckle (6)
  • bobmyhill (5)
  • lavender22 (3)
  • ondrolexa (3)
  • sarahshi (3)
  • NicolasPietteLauziere (2)
  • mmuesly (2)
  • alessandro-gentilini (2)
  • AngRodrigues (1)
  • RichardScottOZ (1)
  • mtb-za (1)
  • codacy-badger (1)
  • ChetanNathwani (1)
  • kaarelmand (1)
  • rbeucher (1)
Top Labels
Issue Labels
enhancement (38) bug (25) documentation (15) good first issue (3)
Pull Request Labels
enhancement (10) bug (1) documentation (1)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 2
conda-forge.org: pyrolite
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 1
Rankings
Dependent repos count: 24.4%
Forks count: 33.2%
Stargazers count: 33.4%
Average: 35.6%
Dependent packages count: 51.6%
Last synced: 4 months ago

Dependencies

.github/workflows/docstest.yml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/unittest.yml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
setup.py pypi
  • joblib *
  • matplotlib >=3.5
  • mpltern >=0.3.4
  • mpmath *
  • numpy *
  • numpydoc *
  • openpyxl *
  • pandas >=1.0
  • periodictable *
  • psutil *
  • requests *
  • scipy >=1.2
  • sympy >=1.7
  • tinydb >4.1
  • typing-extensions *
  • xlrd *
pyproject.toml pypi
  • matplotlib *
  • mpltern >=0.4.0
  • numpy *
  • numpydoc *
  • pandas >=1.0
  • periodictable *
  • requests *
  • scipy >=1.2
  • sympy >=1.7
  • tinydb >4.1
binder/environment.yml conda
  • pip
  • python 3.10.*
environment.yml conda
  • black
  • codecov
  • coverage
  • ipykernel
  • isort
  • joblib
  • jupyter
  • jupyterlab
  • jupyterlab-spellchecker
  • jupyterlab_code_formatter
  • matplotlib
  • mpltern >=0.4.0
  • numpy
  • numpydoc
  • openpyxl
  • pandas >=1.0
  • periodictable
  • pip
  • psutil
  • pytables
  • pytest
  • pytest-cov
  • pytest-runner
  • python 3.10.*
  • recommonmark
  • requests
  • scipy >=1.2
  • sphinx_rtd_theme
  • sympy >=1.7
  • tinydb
  • twine
  • umap-learn
  • versioneer
  • xlrd