meshcompare(varargi​n)

Helps to visually compare two fields, or multiple fields in pairs. Works on 2D or 3D arrays.
74 Downloads
Updated 1 Nov 2016

View License

It is often tricky comparing data (e.g. your solution to a correct solution) because of outliers and offsets which tend to throw out the axis scaling on your figures and hide the subtle field differences.
MESHCOMPARE simply plots fields on-top of eachother (works on 2D or 3D array pairs), allowing for easy visual inspection of regions of data.
This is mainly facilitated by adding string arguments 'crop', 'rotate', and 'subtract', which applies a graphically selected crop region and/or rotation to all of the datasets being visualized to help show up the differences.
'subtract' simply subtracts the mean from each field pair before viewing.
% Example: 2D
aa=peaks(50);
aa1=aa+randn(size(aa))*0.3; % add some noise
bb=real(sqrt(aa));
bb1=bb+randn(size(bb))*0.3; % add some noise
cc=aa;
cc1=real(sin(aa/3)); % compare with similar function
meshcomparecrop(aa,aa1, bb,bb1, cc,cc1)
% Example: 3D, try the code above replacing aa=peaks(50) with:
aa=flow(50);
% Example: crop: try the code above with:
meshcomparecrop(aa,aa1, bb,bb1, cc,cc1,'crop')
% or any combination of crop, subtract, rotate:
meshcomparecrop(aa,aa1, bb,bb1, cc,cc1,'crop','rotate')
Glad to get feedback, suggestions or improvements.

Cite As

Matt Molteno (2024). meshcompare(varargin) (https://www.mathworks.com/matlabcentral/fileexchange/59520-meshcompare-varargin), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2015b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired by: avinterpnan(A,method), mesh plot

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes
1.3.0.0

For 3D arrays, it is possible to specify whether it is rows, columns, or z values which should remain constant to produce the 2D mesh plot.
Try:
meshcompare(aa,aa1,bb,bb1,...,'col');

1.2.0.0

Made figure axes clearer.

1.1.0.0

Description update

1.0.0.0