Changelog

All notable changes to this project will be documented here.

Development

Note

Changes noted in this subsection are to be released in the next version. If you’re keen to check something out before its released, you can use a development install .

0.3.5

  • New Contributor: Malte Mues

  • New Contributor: Bob Myhill

  • Bugfix: Fixed a bug with the index structure for the documentation example galleries.

  • Expanded test suite for a text coverage bump.

  • Started testing against and supporting Python 3.12.

pyrolite.geochem

  • PR Merged: Malte Mues contributed a PR to allow series and dataframes with Pm data to be used with the pyrolite.pyrochem REE accessors (i.e., the column will not be dropped if it exists; #100). This PR aslo included an update for the pyrolite.util.lambdas functions to be more flexible in terms of access, including as indvidual series (allowing performant usage with pandarallel).

  • Updates to pyrolite.pyrochem accessors to be more flexible, generally allowing usage with both DataFrame and Series objects (e.g. df.pyrochem.REE, ser.pyrochem.REE).

pyrolite.plot

  • PR Merged: Bob Myhill contributed a series of pull requests to fix formatting of TAS diagram labels (#91), update the TAS field names in the JSON template (#92), improve the formatting and scaling of TAS diagrams. (#93), add an option to add field labels in the visual centre of polygons (rather than the ‘centroid’; #94), update some usage of matplotlib (#96), and allow selective plotting of indiviudal fields when adding a classification diagram to axes (#98).

pyrolite.mineral

  • Suppressed pandas performance warnings related to sequential construction of pandas.DataFrame`s in :func:`pyrolite.mineral.normative.CIPW_norm.

0.3.4

  • Bugfix: Tom Buckle contributed a PR with some minor bugfixes for the CIPW Norm (#87).

  • Various maintenance updates, including migrating the package to use pyproject.toml.

0.3.3

  • New Contributor: Sarah Shi

  • New Contributor: Ondrej Lexa

  • Bugfix: Updated docs builds to be compatible with recent versions of sphinx-gallery.

  • Bugfix: Updated some pandas assignment, aggregation and similar operations to be compatible with more recent versions of Pandas.

  • Added explicit Python 3.10 and 3.11 support.

  • Removed Python 3.7 support (now end of life).

pyrolite.mineral

  • PR Merged: Added an option to get expanded outputs for the CIPW Norm (from Tom Buckle; #80).

  • Bugfix: Fixes and updated tests for CIPW Norm outputs.

pyrolite.plot

  • PR Merged: Sarah Shi contributed a PR to add variations on the TAS diagram from Le Maitre ( #79). These can be accessed by providing a which_model keyword argument to the TAS constructor (or plot template).

  • PR Merged: Ondrej Lexa contributed a PR to add sandstone bulk geochemistry discrimination diagrams (Pettijohn, Herron; #82).

  • Bugfix: Fixed issue with handling vmin and vmax for colormapping in pyrolite.plot.color.

  • Suppressed warnings for ‘division by zero’/’invalid value encountered in divide’ in ternary diagram scatter plots.

  • Added explicit support for colormapping categorical data in pyrolite.plot.color, such that ordering is preserved/consistent in e.g. legends.

pyrolite.util

  • Feature: Added new version of ICS International Chronostratigraphic Chart (2022-10; pyrolite.util.time.Timescale).

  • Bugfix: Corrected TAS diagram references, and fixed an issue where only the ID names were able to we added to diagrams.

  • Updated axes-sharing utility function share_axes() to reflect more recent versions of matplotlib.

  • Fixed issue in path interpolation for contours (pyrolite.util.plot.interpolation.get_contour_paths) for recent matplotlib versions.

  • Updated figure export utility function to use pathlib syntax for suffixes, which should avoid potential for double suffixes (e.g. figure_name.png.png).

0.3.2

  • New Contributor: Angela Rodrigues

  • Bugfix: Edited docstrings and added ignore-warning for numpydoc warnings.

  • Bugfix: Updated installation instructions and Binder configuration to use secure protocols when installing via git (i.e. https://)

  • Bugfix: Update CI builds so that tests can be run on MacOS.

pyrolite.mineral

  • Feature: Added a TAS-based iron correction following Middlemost (1989).

  • Bugfix: Fixed some errors in mineral formulae and handling leading to inaccurate outputs from CIPW Norm.

  • Split out volcanic from intrusive samples in the CIPW Norm volcanic rock comparison.

  • Added SINCLAS abbreviations to the mineral dictionary associated with the CIPW Norm, so alternate mineral naming systems can be compared.

pyrolite.util

0.3.1

  • New Contributor: Martin Bentley

  • New Contributor: Chetan Nathwani

  • New Contributor: Tom Buckle

  • New Contributor: Nicolas Piette-Lauziere

  • Removed a redundant pathlib dependency (which is standard library as of Python 3.4). This will fix an issue blocking setting up a conda-forge recipe (#51).

  • Updated instances of redundant numpy types throughout to silence deprecation warnings (using base types float, int except where specific numpy types are required).

  • Added a minimum sympy version requirement (v1.7) to avoid potential import errors.

  • Updated minimum versions for matplotlib and mpltern to address potential version conflicts.

  • A user installation is now recommended by default. This solves some potential issues on *-nix and MacOS systems.

  • Fixed broken links to documentation in the README (thanks to Alessandro Gentilini).

  • Fixed a bad documentation link the PyPI package information.

  • Updated supported Python versions (Python 3.7-3.9).

  • Bugfix: Updated use of tinydb databases to default to read-only access except where write access is explicitly needed. This should solve issues with permissions during installation and use of pyrolite on some systems ( #61). Thanks to Antoine Ouellet for bringing this to attention, and both Sam Bradley and Alex Hunt for following up with the idea for the current solution.

pyrolite.geochem

  • Feature: Nicolas Piette-Lauziere contributed two new functions for pyrolite.geochem.alteration: The chlorite-carbonate-pyrite index of Large et al. (2001; CCPI()) and the Alteration index of Ishikawa (1976; IshikawaAltIndex()).

  • Bugfix: Fixed a bug where incomplete results where being returned for calls to lambda_lnREE() using the O’Neill algorithm. In this instance only the rows with the least missing data (typically those with no missing data) would return lambda values, other rows would contain null values. Thanks to Mark Pearce for identifying this one! In the meantime, using df.pyrochem.lambda_lnREE(algorithm='opt') will allow you to avoid the issue.

  • Bugfix: Modified a few of the pyrolite.geochem.pyrochem methods to a avoid a bug due to assignment of the dataframe ( to_molecular(), to_weight(), recalculate_Fe() ). This bug seems to be contained to the dataframe accessor, the individual functions from pyrolite.geochem.transform appear to work as expected outside of this context. Thanks to Chetan Nathwani for highlighting this one!

  • Renamed (private) package variables __common_oxides__ and __common_elements__ to _common_oxides and _common_elements

pyrolite.mineral

  • Feature: CIPW function added to pyrolite.mineral.normative, largely from contributions by both Chetan Nathwani and Tom Buckle ( #53). Note that the implementation still has a bug or two to be ironed out; it will currently raise a warning when used to make sure you’re aware of this. An example has been added demonstrating the intended functionality and demonstrating how coherent this is with existing implementations of CIPW (e.g. SINCLAS).

pyrolite.comp

pyrolite.plot

  • Feature: Added ternary classification plot templates USDASoilTexture, FeldsparTernary and QAP ( #49; idea and implementation of the latter thanks to Martin Bentley !). The idea for implementing the ternary diagram came from a discussion with Jordan Lubbers and Penny Wieser (of the Thermobar team, who are working in similar spaces); they’ve now implemented a version using python-ternary (rather than mpltern, which pyrolite is currently using).

  • Updated examples and documentation for density and contour plots.

  • Added autoscaling for standard spider() and related plots to address (#55)

  • process_color() has been updated to better deal with data explicitly declared to be of a ‘category’ data type (as a pandas.Series), and also to better handle variation in mapping notations. Ordering of categorical variables will now be preserved during color-mapping.

  • Added the option to have a ‘bad’ color to be used in categorical color-mapping where a category cannot be found.

  • Inconsistent color specifications (e.g. a list or array of multiple types) will now result in an error when passed to process_color().

  • parallel() has been updated to align with other plotting functions (taking an optional components keyword argument).

pyrolite.util

  • Feature: Added ternary classification models for USDASoilTexture, FeldsparTernary and QAP ( #49; idea and implementation of the latter thanks to Martin Bentley).

  • Added some functionality to pyrolite.util.classification to allow classifier fields to be precisely specified by ratios (useful in ternary systems), for multiple ‘modes’ of diagrams to be contained a single configuration file, and fixed some issues with labelling (arguments add_labels and which_labels can now be used to selectively add either field IDs/abbreviations or field names to classification diagrams).

  • Limits are no longer explicitly required for bivariate templates (xlim, ylim) in pyrolite.util.classification.

  • Update default parameterisation to "full" for lambdas, using all REE to generate orthogonal polynomial functions.

  • Expanded pyrolite.util.text.int_to_alpha() to handle integers which are greater than 25 by adding multiple alphabetical characters (e.g. 26 > aa), and to use the built-in string.ascii_lowercase.

  • save_figure() will now create the directory it’s given if it doesn’t exist.

  • Citation information for lambdas updated to include recent publications.

  • Updated plot_pca_vectors() to accept line colors and linestyles arguments.

  • Updated init_spherical_octant() to accept a fontsize argument.

  • Added example for coloring ternary diagrams and ternary scatter points based on a ternary color system.

  • Added helper for generating PCA component labels from a scikit-learn PCA object (get_PCA_component_labels())

  • Updated confusion matrix visualisation helper plot_confusion_matrix() to remove grid and provide more useful default colormap normalization options.

  • Moved the manifold visualisation example to utility examples from plotting examples.

  • Added a fmt_string argument to LogTransform for use in automated naming of transformed columns; this may be expanded to other transformers soon.

  • Fixed some string issues for pyrolite.util.text.

0.3.0

  • New Contributor: Lucy Mathieson

  • Continuous Integration has been migrated from Travis to GitHub Actions.

  • Added an environment.yml file for development environment consistency.

  • Removed some tests dependent on xlrd due to external issues with reading .xls and .xlsx files with some OS-Python version combinations.

  • Fixed some broken documentation links.

  • Added psutil to requirements.

pyrolite.plot

  • Bugfix: Fixed a bug where there scatter and line arguments would conflict for spider() (#46). To address this, spider() and related functions will now accept the keyword arguments line_kw and scatter_kw to explicitly configure the scatter and line aspects of the spider plot - enabling finer customization. An extra example has been added to the docs to illustrate the use of these parameters. Thanks go to Lucy Mathieson for raising this one!

  • Added the set_ticks keyword argument to spider() and associated functions, allowing ticks to be optionally set (set_ticks=False if you don’t want to set the x-ticks).

  • Updated pyrolite.plot.color.process_color() to better handle colour mapping and added examples illustrating this. You can also now use RGBA colours when using the color_mappings keyword argument.

  • Updated automated pyrolite matplotlib style export to be more reliable.

  • Changed the default shading for density() to suppress error about upcoming matplotlib deprecation.

  • Ordering for contours, contour names and contour styles is now preserved for density() and related functions.

  • Updated pyrolite.plot.templates.pearce to use ratios from Sun & McDonough (1989), as in the Pearce (2008) paper.

pyrolite.geochem

  • Bugfix: Fixed a bug where Eu was unnecessarily excluded from the lambda_lnREE() fit in all cases.

  • Bugfix: Fixed a bug where ratio-based normalisation was not implemented for get_ratio() and related functions (#34)

  • Added a local variable to pyrolite.geochem.ind to allow referencing of indexing functions (e.g. by_incompatibility()) by name, allowing easier integration with spider().

  • Added by_number() for indexing a set of elements by atomic number.

pyrolite.comp

pyrolite.util

0.2.8

  • Updated citation information.

  • Added specific testing for OSX for Travis, and updated the install method to better pick up issues with pip installations.

  • Feature: Added a gallery of pages for each of the datasets included with pyrolite. This will soon be expanded, especially for the reference compositions (to address #38).

pyrolite.geochem

  • PR Merged: Kaarel Mand submitted a pull request to add a number of shale and crustal compositions to the reference database.

  • Bugfix: Fixed a bug where lambdas would only be calculated for rows without missing data. Where missing data was present, this would result in an assertion error and hence no returned values.

  • Bugfix: Fixed a bug where missing data wasn’t handled correctly for calculating lambdas. The functions now correctly ignore the potential contribution of elements which are missing when parameterising REE patterns. Thanks to Steve Barnes for the tip off which led to identifying this issue!

  • Feature: Added pyrolite.geochem.ind.REY(), list_REY(), and REY() to address (#35). This issue was also opened by Kaarel Mand!

  • As a lead-in to a potential change in default parameterisation, you can now provide additional specifications for the calculation of lambdas to lambda_lnREE() and calc_lambdas() to determine the basis over which the individual orthogonal polynomials are defined (i.e. which REE are included to define the orthonormality of these functions). For the keyword argument params, (as before) you can pass a list of tuples defining the constants representing the polynomials, but you can now alternatively pass the string "ONeill2016" to explicitly specify the original parameterisation, or "full" to use all REE (including Eu) to define the orthonormality of the component functions (i.e. using params="full"). To determine which elements are used to perform the fit, you can either filter the columns passed to these functions or specifically exclude columns using the exclude keyword argument (e.g. the default remains exclude=["Eu"] which excludes Eu from the fitting process). Note that the default for fitting will remain, but going forward the default for the definition of the polynomial functions will change to use all the REE by default (i.e. change to params="full").

  • Significant performance upgrades for lambda_lnREE() and associated functions (up to 3000x for larger datasets).

  • Added a minimum number of elements, configurable for lambda_lnREE(). This is currently set to seven elements (about half of the REE), and probably lower than it should be ideally. If for some reason you want to test what lambdas (maybe just one or two) look like with less elements, you can use the min_elements keyword argument.

  • Added list_isotope_ratios() and corresponding selector isotope_ratios() to subset isotope ratios.

  • Added parse_chem() to translate geochemical columns to a standardised (and pyrolite-recognised) column name format.

pyrolite.plot

  • Bugfix: Fixed a bug where arguments processing by pyrolite.plot.color would consume the ‘alpha’ parameter if no colour was specified (and as such it would have no effect on the default colors used by pyplot)

  • Bugfix: pyrolite.plot.color now better handles colour and value arrays.

  • Bugfix: Keyword arguments passed to pyrolite.plot.density will now correctly be forwarded to respective functions for histogram and hexbin methods.

  • Customised matplotlib styling has been added for pyrolite plotting functions, including legends. This is currently relatively minimal, but could be expanded slightly in the future.

  • The bw_method argument for scipy.stats.kde.gaussian_kde() can now be parsed by pyrolite density-plot functions (e.g. density(), heatscatter()). This means you can modify the default bandwidth of the gaussian kernel density plots. Future updates may allow non-Gaussian kernels to also be used for these purposes - keep an eye out!

  • You can now specify the y-extent for conditional spider plots to restrict the range over which the plot is generated (and focus the plot to where your data actually is). For this, feed in a (min, max) tuple for the yextent keyword argument.

  • The ybins argument for spider() and related functions has been updated to bins to be in line with other functions.

  • Conditional density REE() plots now work as expected, after some fixes for generating reverse-ordered indexes and bins

  • Added a filter for ternary density plots to ignore true zeroes.

  • Some updates for pyrolite.plot.color for alpha handling and colour arrays .

pyrolite.comp

  • Updated transform naming to be consistent between functions and class methods. From this version use capitalised versions for the transform name acronyms (e.g. ILR instead of ilr).

  • Added for transform metadata storage within DataFrames for pyrocomp, and functions to access transforms by name.

  • Added labelling functions for use with pyrolite.comp.pyrocomp and codata to illustrate the precise relationships depicted by the logratio metrics (specified using the label_mode parameter supplied to each of the resepective pyrocomp logratio transforms).

pyrolite.util

0.2.7

  • Bugfix to include radii data in MANIFEST.in

0.2.6

  • New Contributors: Kaarel Mand and Laura Miller

  • PR Merged: Louise Schoneveld submitted a pull request to fill out the newly-added Formatting and Cleaning Up Plots tutorial. This tutorial aims to provide some basic guidance for common figure and axis formatting tasks as relevant to pyrolite.

  • Added codacy for code quality checking, and implemented numerous clean-ups and a few new tests across the package.

  • Performance upgrades, largely for the documentation page. The docs page should build and load faster, and have less memory hang-ups - due to smaller default image sizes/DPI.

  • Removed dependency on fancyimpute, instead using functions from scikit-learn

pyrolite.geochem

  • Bugfix: pyrolite lambdas differ slightly from [ONeill2016] (#39). Differences between the lambda coefficients of the original and pyrolite implementations of the lambdas calculation were identified (thanks to Laura Miller for this one). With further investigation, it’s likely the cost function passed to scipy.optimize.least_squares() contained an error. This has been remedied, and the relevant pyrolite functions now by default should give values comparable to [ONeill2016]. As part of this, the reference composition ChondriteREE_ON was added to the reference database with the REE abundances presented in [ONeill2016].

  • Bugfix: Upgrades for convert_chemistry() to improve performance (#29). This bug appears to have resulted from caching the function calls to pyrolite.geochem.ind.simple_oxides(), which is addressed with 18fede0.

  • Feature: Added the [WhittakerMuntus1970] ionic radii for use in silicate geochemistry ( #41), which can optionally be used with pyrolite.geochem.ind.get_ionic_radii() using the source keyword argument (source='Whittaker'). Thanks to Charles Le Losq for the suggestion!

  • Bugfix: Removed an erroneous zero from the GLOSS reference composition (GLOSS_P2014 value for Pr).

  • Updated REE() to default to dropPm=True

  • Moved pyrolite.mineral.ions to pyrolite.geochem.ions

ONeill2016(1,2,3)

O’Neill, H.S.C., 2016. The Smoothness and Shapes of Chondrite-normalized Rare Earth Element Patterns in Basalts. J Petrology 57, 1463–1508. doi: 10.1093/petrology/egw047.

WhittakerMuntus1970

Whittaker, E.J.W., Muntus, R., 1970. Ionic radii for use in geochemistry. Geochimica et Cosmochimica Acta 34, 945–956. doi: 10.1016/0016-7037(70)90077-3.

pyrolite.mineral

  • Bugfix: Added the mineral database to MANIFEST.in to allow this to be installed with pyrolite (fixing a bug where this isn’t present, identified by Kaarel Mand).

pyrolite.plot

  • Bugfix: Updated pyrolite.plot to use pandas.DataFrame.reindex() over pandas.DataFrame.loc() where indexes could include missing values to deal with #31.

  • Updated spider() to accept logy keyword argument, defaulting to True

pyrolite.util

  • Broke down pyrolite.util.plot into submodules, and updated relevant imports. This will result in minimal changes to API usage where functions are imported explicitly.

  • Split out pyrolite.util.lambdas from pyrolite.util.math

  • Added a minimum figure dimension to init_axes() to avoid having null-dimensions during automatic figure generation from empty datasets.

  • Added example_spider_data() to generate an example dataset for demonstrating spider diagrams and associated functions. This allowed detailed synthetic data generation for spider() and pyrolite.plot.pyroplot.REE() plotting examples to be cut down significantly.

  • Removed unused submodule pyrolite.util.wfs

0.2.5

  • PR Merged: @lavender22 updated the spider diagram example to add a link to the normalisation example (which lists different reservoirs you can normalise to).

  • Added an ‘Importing Data’ section to the docs Getting Started page.

  • Disabled automatic extension loading (e.g. for pyrolite_meltsutil) to avoid bugs during version mismatches.

pyrolite.comp

pyrolite.plot

  • Added support for spider plot index ordering added with the keyword index_order (#30)

  • Added support for color indexing in color using pandas.Series, and also for list-like arrays of categories

  • Added a workaround for referring to axes positions where the projection is changed to a ternary projection (displacing the original axis), but the reference to the original axes object (now booted from fig.axes/fig.orderedaxes) is subsequently used.

  • Updated process_color() processing of auxillary color keyword arguments (fixing a bug for color arguments in stem())

  • Added support for a color_mappings keyword argument for mapping categorical variables to specific colors.

  • Updated the effect of relim keyword argument of density() to remove the scaling (it will no longer log-scale the axes, just the grid/histogram bins).

  • Updated Grid to accept an x-y tuple to specify numbers of bins in each direction within a grid (e.g. bins=(20, 40))

  • Updated the grids used in some of the density() methods to be edges, lining up the arrays such that shading parameters will work as expected (e.g. shading='gouraud')

pyrolite.geochem

  • Added sorting function ~pyrolite.geochem.ind.by_incompatibility for incompatible element sorting (based on BCC/PM relative abundances).

pyrolite.util

0.2.4

pyrolite.plot

pyrolite.util

  • Updated time to include official colors.

  • Added pyrolite.util.time example

  • Updated stream_log() to deal with logger duplication issues.

  • Various updates to pyrolite.util.plot, noted below:

  • Added universal axes initiation for bivariate/ternary diagrams using init_axes() and axes labelling with label_axes(),

  • Added keyword argument processing functions scatterkwargs(), linekwargs(), and patchkwargs()

  • Added functions for replacing non-projected axes with ternary axes, including replace_with_ternary_axis(), axes_to_ternary() (and get_axes_index() to maintain ordering of new axes)

  • Added get_axis_density_methods() to access the relevant histogram/density methods for bivariate and ternary axes

  • Renamed private attributes for default colormaps to DEFAULT_DISC_COLORMAP and DEFAULT_CONT_COLORMAP

  • Updated add_colorbar() to better handle colorbars for ternary diagrams

0.2.3

pyrolite.mineral

pyrolite.plot

pyrolite.geochem

  • pyrolite.geochem.parse now also includes functions which were previously included in pyrolite.geochem.validate

  • Fixed some typos in reference compositions from Gale et al. (2013)

pyrolite.util

  • Added pyrolite.util.plot.set_ternary_labels() for setting and positioning ternary plot labels

0.2.2

pyrolite.geochem

  • Added SCSS() for modelling sulfur content at sulfate/sulfide saturation.

0.2.1

  • Updated and refactored documentation

  • Removed extensions from pyrolite (pyrolite.ext.datarepo, pyrolite.ext.alphamelts). These will soon be available as separate extension packages. This enabled faster build and test times, and removed extraneous dependencies for the core pyrolite package.

  • Added stats_require as optional requirements in setup.py

pyrolite.plot

  • parallel() now better handles pyplot figure and subplot arguments

  • ternary() and related functions now handle label offsets and label fontsizes

  • Minor bugfixes for density

  • Added unity_line argument to spider() to be consistent with REE_v_radii()

pyrolite.mineral

pyrolite.util

  • Added pyrolite.util.plot.mappable_from_values() to enable generating ScalarMappable objects from an array of values, for use in generating colorbars

0.2.0

  • Added alt-text to documentation example images

  • Updated contributing guidelines

  • Added Python 3.8-dev to Travis config (not yet available)

  • Removed pandas-flavor decorators from pyrolite.geochem and pyrolite.comp, eliminating the dependency on pandas-flavor

pyrolite.geochem

pyrolite.comp

pyrolite.plot

pyrolite.util

  • Added pyrolite.util.plot.get_twins()

0.1.21

pyrolite.plot

pyrolite.ext.alphamelts

  • Updated pyrolite.ext.alphamelts interface:

    • Docs

    • Updated to default to tables with percentages (Wt%, Vol%)

    • Updated plottemplates y-labels

    • Fixed automation grid bug

0.1.20

pyrolite.geochem

pyrolite.util.skl

pyrolite.plot

  • Added pyrolite.plot.biplot to API docs

  • Updated default y-aspect for ternary plots and axes patches

pyrolite.ext.alphamelts

  • Updated pyrolite.ext.alphamelts.automation, pyrolite.ext.alphamelts.meltsfile, pyrolite.ext.alphamelts.tables

  • Updated docs to use pyrolite.ext.alphamelts.automation.MeltsBatch with a parameter grid

0.1.19

  • Added this changelog

  • Require pandas >= v0.23 for DataFrame accessors

pyrolite.geochem

pyrolite.ext.alphamelts

  • Improvements for pyrolite.ext.alphamelts.download

  • Completed pyrolite.ext.alphamelts.automation.MeltsBatch

  • Added the pyrolite.ext.alphamelts.web docs example

  • Added pyrolite.ext.alphamelts.plottemplates to API docs

  • Added pyrolite.ext.alphamelts.tables.write_summary_phaselist()

  • Added pyrolite.ext.alphamelts.automation.exp_name() for automated alphaMELTS experiment within batches

pyrolite.util

  • Added pyrolite.util.meta.ToLogger output stream for logging

  • Added pyrolite.util.multip.combine_choices() for generating parameter combination grids

0.1.18

pyrolite.plot

pyrolite.geochem

  • Added stub for pyroilte.geochem.qualilty

pyrolite.util

0.1.17

  • Update status to Beta

pyrolite.geochem

pyrolite.plot

pyrolite.mineral

pyrolite.util

  • Added functions for interpolating paths and patches (e.g. contours) and exporting these: interpolate_path(), interpolated_patch_path(), get_contour_paths(), path_to_csv()

  • Added util.plot._mpl_sp_kw_split()

  • Added util.text.remove_suffix()

  • Added util.text.int_to_alpha()

pyrolite.ext

  • Updated alphaMELTS interface location to external package interface rather than utility (from pyrolite.util to pyrolite.ext)

  • Added pyrolite.ext.datarepo stub

0.1.16

pyrolite.ext.alphamelts

  • Added pyrolite.ext.alphamelts Monte Carlo uncertainty estimation example

  • Added pyrolite.ext.alphamelts.automation.MeltsExperiment.callstring() to facilitate manual reproducibility of pyrolite calls to alphaMELTS.

  • Improved alphaMELTS interface termination

  • Added pyrolite.ext.alphamelts.plottemplates.phase_linestyle() to for auto-differentiated linestyles in plots generated from alphaMELTS output tables

  • Added pyrolite.ext.alphamelts.plottemplates.table_by_phase() to generate axes per phase from a specific output table

pyrolite.geochem

pyrolite.plot

pyrolite.util

0.1.15

pyrolite.ext.alphamelts

0.1.14

  • Added Contributor Covenant Code of Conduct

pyrolite.mineral

pyrolite.ext.alphamelts

  • Improved pyrolite.ext.alphamelts.automation workflows, process tracking and termination

  • Incorporated MeltsProcess into MeltsExperiment

  • Added MeltsBatch stub

  • Added read_meltsfile() and read_envfile()

  • Added pyrolite.ext.alphamelts.plottemplates

  • Added pyrolite.ext.alphamelts.tables.get_experiments_summary() for aggregating alphaMELTS experiment results across folders

pyrolite.util

0.1.13

pyrolite.ext.alphamelts

  • Updated pyrolite.ext.alphamelts.automation.MeltsProcess workflow

  • Updated pyrolite.ext.alphamelts.download local installation

  • Added pyrolite.ext.alphamelts.install example

  • Added pyrolite.ext.alphamelts.tables example

  • Added pyrolite.ext.alphamelts.automation example

  • Added pyrolite.ext.alphamelts.env example

0.1.11

pyrolite.geochem

pyrolite.comp

pyroilite.ext.alphamelts

  • Added pyrolite.ext.alphamelts to API docs

  • Added pyrolite.ext.alphamelts.automation

pyrolite.util

0.1.10

pyrolite.util

pyrolite.ext.datarepo

  • Updated pyrolite.ext.datarepo.georoc (then pyrolite.util.repositories.georoc)

0.1.9

pyrolite.plot

pyrolite.util

pyrolite.ext.alphamelts

  • Added pyrolite.ext.alphamelts (then pyrolite.util.alphamelts)

  • Bugfix for Python 3.5 style strings in pyrolite.ext.alphamelts.parse

0.1.8

0.1.7

pyrolite.plot

pyrolite.util

  • Added pyrolite.util.missing.cooccurence_pattern()

  • Moved pyrolite.util.skl.plot_cooccurence to pyrolite.util.plot.plot_cooccurence()

  • Updated pyrolite.util.plot.conditional_prob_density(), pyrolite.util.plot.bin_edges_to_centres() and pyrolite.util.plot.bin_centres_to_edges()

0.1.6

pyrolite.plot

  • Update spider() to use contours keyword argument, and pass these to pyrolite.util.plot.plot_Z_percentiles()

0.1.5

pyrolite.plot

pyrolite.util

0.1.4

pyrolite.plot

pyrolite.comp

0.1.2

  • Fixed logo naming issue in docs

pyrolite.plot

0.1.1

pyrolite.plot

pyrolite.comp

pyrolite.util

  • Added plot_stdev_ellipses() and plot_pca_vectors()

  • Updated pyrolite.util.plot.plot_Z_percentiles()

  • Updated pyrolite.util.plot.ternary_heatmap()

  • Updated pyrolite.util.plot.vector_to_line()

0.1.0

pyrolite.plot

pyrolite.comp

pyrolite.util

Note

Releases before 0.1.0 are available via GitHub for reference, but were alpha versions which were never considered stable.