You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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 depreciation 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 in the PyPI package information.
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
Updated pyrolite.comp.codata.close() to better deal with zeros (avoiding unnecessary warnings).
Added spherical coordinate transformation to pyrolite.comp.pyrocomp and pyrolite.comp.codata (see pyrolite.comp.pyrocomp.sphere()).
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; see note on plot templates above).
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.