.. _external_links: ============== External links ============== This page contains links to related external projects. Python packages =============== The following packages inspired UltraPlot, are required or optional dependencies of UltraPlot, or are distributed with UltraPlot: * `matplotlib `__ - The powerful data visualization package we all know and love. * `xarray `__ - A package for working with annotated ND numpy arrays. If you haven't heard of it and you work with NetCDF files, it will change your life. * `pandas `__ - A package that turns spreadsheets and tables into annotated 2D numpy arrays. Invaluable for many types of datasets. * `pint `__ - A package for tracking and converting between physical units during mathematical operations and when plotting in matplotlib axes. * `cartopy `__ - A package for plotting geographic and geophysical data in matplotlib. Includes a suite of different map projections. * `basemap `__ - The original cartographic plotting package. Basemap is less closely integrated with matplotlib than cartopy but still quite popular. As of 2020 it is no longer actively maintained. * `seaborn `__ - A statistical data visualization package. Seaborn is based on matplotlib but its interface is mostly separate from matplotlib. It is not generally suitable for geophysical data. * `hsluv-python `__ - A python implementation of `HSLuv `__ used for the hue, saturation, luminance math required by :class:`~ultraplot.colors.PerceptualColormap`. * `TeX Gyre `__ - An open source re-implementation of popular fonts like `Helvetica `__ and `Century `__. These are distributed with UltraPlot and used for its default font families. * `Fira Math `__ - An open source sans-serif font with a zillion glyphs for mathematical symbols. This is distributed with UltraPlot as a viable alternative to `DejaVu Sans `__. Downloadable colormaps ====================== The following colormap repositories are imported and registered by UltraPlot. * `Color Brewer `__ - The O.G. perceptually uniform colormap distribution. These are included with matplotlib by default. * `cmOcean `__ - Perceptually uniform colormaps designed for oceanography, but suitable for plenty of other applications. * `SciVisColor `__ - Science-focused colormaps created by the viz team at UT Austin. Provides tools for concatenating colormaps, suitable for complex datasets with funky distributions. * `Fabio Crameri `__ - Perceptually uniform colormaps for geoscientists. These maps have unusual and interesting color transitions. .. * `Cube Helix `__ - A series of colormaps generated by rotating through RGB channel values. The colormaps were added from `Palletable `__. Tools for making new colormaps ============================== Use these resources to make colormaps from scratch. Then import them into UltraPlot by adding files to the ``.UltraPlot/cmaps`` folder (see :ref:`this section ` for details). * `The UltraPlot API `__ - Namely, the :class:`~ultraplot.colors.ContinuousColormap` class and :class:`~ultraplot.constructor.Colormap` constructor function. * `HCL Wizard `__ - An advanced interface for designing perceptually uniform colormaps, with example plots, channel plots, and lots of sliders. * `SciVisColor `__ - An advanced interface for concatenating segments from a suite of colormap presets. Useful for datasets with complex statistical distributions. * `CCC-tool `__ - An advanced interface for designing, analyzing, and concatenating colormaps, leaning on the `SciViscolor `__ presets. * `HCL Picker `__ - A simple interface for taking cross-sections of the HCL colorspace. Resembles the examples :ref:`shown here `. * `Chroma.js `__ - A simple interface for Bezier interpolating between lists of colors, with adjustable hue, chroma, and luminance channels. Tools for making new color cycles ================================= Use these resources to make color cycles from scratch. Then import them into UltraPlot by adding files to the ``.UltraPlot/cycles`` folder (see :ref:`this section ` for details). * `The UltraPlot API `__ - Namely, the :class:`~ultraplot.colors.DiscreteColormap` class and :class:`~ultraplot.constructor.Cycle` constructor function. * `i want hue `__ - An advanced interface for generating perceptually distinct color sets with options for restricting the hue, chroma, and luminance ranges. * `Color Cycle Picker `__ - An advanced interface for generating perceptually distinct color sets based on seed colors, with colorblind-friendliness measures included. * `Colorgorical `__ - An advanced interface for making perceptually distinct colors sets with both seed color and channel restriction options. * `Adobe Color `__ - A simple interface for selecting color sets derived from sample images, including an option to upload images and a searchable image database. * `Color Hunt `__ - A simple interface for selecting preset color sets voted on by users and grouped into stylistic categories like "summer" and "winter". * `Coolors `__ - A simple interface for building randomly-generated aesthetically-pleasing color sets that are not necessarily uniformly perceptually distinct. * `Color Drop `__ - A simple interface for selecting preset color sets voted on by users.