multigradient: custom gradient colormap

版本 1.5.6 (46.3 KB) 作者: Laurens R Krol
An adjustable multiple-colour gradient colour map generator / editor for MATLAB, with presets.
639.0 次下载
更新时间 2021/1/12

This script allows you to generate a colour scale (as for colormap, colorbar) using any number of custom colours, and allows you to arrange these colours by adjusting their relative positions with respect to each other, much like you may be used to creating gradients in e.g. Adobe Photoshop or CorelDRAW. It will automatically interpolate the colours in between the indicated anchor points.

In its most basic form, simply call the script using an n-by-3 matrix of RGB values, and it will generate the colour map accordingly. For example, multigradient([1 0 0; 1 1 0; 0 1 0]) will return a map that blends from red through yellow to green, of the same size as the current figure's color map. Further tricks are optional. Note that some of these tricks use the Image Processing Toolbox, specifically the rgb2lab and lab2rgb functions.

* Interpolation in RGB space. Simple linear interpolation of the given RGB values.
* Interpolation in HSV space. Linear interpolation of the values after conversion into HSV, for e.g. the rainbow colormap: multigradient([1 0 0; 0 0 1], 'interp', 'hsv').
* Isoluminant interpolation in L*a*b* space. The L* value is equalised for all given colours before linear interpolation and conversion back to RGB. Note that some colour clipping may occur due to the gamut differences.
* Interpolation in Kenneth Moreland's Msh space for divergent colour maps for scientific visualisation. A neutral unsatured middle point is automatically inserted if the two endpoint colours for the diverging map are sufficiently distinct. See: Moreland, K. (2009). Diverging color maps for scientific visualization. In Proceedings of the 5th International Symposium on Visual Computing, doi: 10.1007/978-3-642-10520-3_9 mirrored at https://www.kennethmoreland.com/color-maps/ColorMapsExpanded.pdf
* Control points allow the relative distances between the colours to be adjusted.
* Many presets, including colour scales designed by Kenneth Moreland (https://www.kennethmoreland.com) and Cynthia Brewer (http://colorbrewer2.org), are included.
* Colour scales can easily be reversed.

引用格式

Laurens R Krol (2024). multigradient: custom gradient colormap (https://github.com/lrkrol/multigradient), GitHub. 检索来源 .

MATLAB 版本兼容性
创建方式 R2018a
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Red 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

无法下载基于 GitHub 默认分支的版本

版本 已发布 发行说明
1.5.6

Updated sample.m and description following Vittorio Picco's comment.

1.5.5

- Fixed typo in preset seq.cb.YlGnBu name
- Added preset: div.RdYlGn

1.5.3

- Updated preset naming convention
- Reversed div.cm colours to maintain cold -> warm consistency
- Code clean-up

1.5.0

- Added L*a*b* isoluminant interpolation (labiso)
- Added Msh divergent interpolation (mshdiv)
- Added preset argument with some initial presets
- Added reverse argument
- Enabled middle control point for two-colour maps

1.0.0

要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库
要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库