A wrapper for scatter(.) that
- chooses useful defaults for colors and marker size and shape (adaptive to the number of points to be plotted),
- allows for easy group-wise scatter plots,
- implements randomized-order plotting to prevent the last plotted data to (misleadingly) dominate plot appearance,
- uses nonlinear color scaling to exploit the full color range, and
- implements some automatic simple statistical annotations to be shown (optionally).
The goal is for this to be a one-stop function to easily create a useful and visually appealing scatter diagram.
cbrewer file exchange function to be on the path, see
The file is included here for convenience; copyright remains with the original author.
The following are two examples comparing the default outputs of
In the first example, the linear colormap used by
scatter is completely useless due to a skewed distribution of data points.
scatter_nice fixes this by using an automatically balanced nonlinear colormap.
Moreover, outliers near the beginning of the input vector are completely invisible in the first plot since they are hidden by later datapoints.
scatter_nice, they are easily visible because of a) the nonlinear colormap and b) randomized-order plotting.
In the second example, simply plotting two groups after another (with
hold on) using
scatter, the second group will completely hide the first.
scatter_nice offers a simple interface for plotting multiple groups and plots them in randomized order.
In both examples,
scatter_nice adaptively chooses a point size that is (to my eyes, at least) better suited to the number of datapoints, and selects a fitting and well-crafted colormap from
Eike Petersen, 2020-2021
Eike Petersen (2023). scatter_nice (https://github.com/e-pet/scatter_nice/releases/tag/1.0), GitHub. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!