This is a quick-and-dirty proof of concept GUI for picking points from plots in MATLAB.
It's designed around quickly picking points from a collection of CSV files in a folder, and was inspired by an issue faced by a researcher at UAB. They had a ton of signal data with "obvious" peaks. They're nearing the end of their work and didn't have time or data to figure out a deep learning approach to finding the peaks. So I wrote this as a quick solution to the problem.
The code is not particularly well encapsulated or refined. If I refined it I would...
- Modularize data sources, so it could run from files or from 2-column arrays in the workspace.
- Make features (markers, colors, sizes, etc) more customizable using a couple of "preferences" utilities I wrote for another project that aren't published separately yet.
- Make the window resizeable in a sensible way.
- Find a way to make column selection more flexible.
- Have both an auto-save mode, and a save-only-when-I-ask mode. Right now everything is auto-saved.
- Click "Load Folder..."
- Pick a folder to load
- Select X and Y columns in the next dialog
- The software assumes ALL CSVs have the same columns, you only get to pick once per folder load!
- The "Series <-> Scatter" toggle changes the displayed plot to a line series or a marker-only scatterplot.
- Pick points
- Left click to pick a point and add a red "+" symbol there.
- Right click to unpick a point.
- All changes are saved to the CSV automatically in a new column "IS_PICKED__" whenever you pick or unpick a point.
- Click Next or Previous to move to a different file.
- Clear Data to clear all loaded data and start over, if needed.
- Help shows help like this document.
Written with R2021b, may not work in older versions. MathWorks is frequently updating their App Designer stuff and I'm not able to track that for this project. Does NOT require any toolboxes. All of my own utilities are included in
William Warriner (2022). Point Picker (https://github.com/wwarriner/matlab_point_picker/releases/tag/v0.1.1), 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!