figure2struct
Categorize MATLAB graphics objects in a figure/axes and return them as fields of a structure.
h = figure2struct(src)
src : handle of a figure, an axes or handles of its children.
gcf by default.
When a figure is given, the returning struct h has the same
number of rows and columns as the subplots.
The rows and columns are determined based on the position,
without using subplot. So this function can be used with
figures where the subplots are repositioned, e.g., for printing.
h(row,col) : a struct containing the following fields:
- axes
- children (all children regardless of kind)
- line
- text
- legend
- marker (line with LineStyle = 'none'),
- segment (line with only two coordinates),
- segment_vert
- segment_horz
- crossline (line that spans at least one axis)
- nonsegment (lines that connect more than two points).
To use just one axes out of multiple subplots, use:
copyobj(h(row,col).axes, figure);
To find a subset of the objects, use findobj. For example:
red_markers = findobj(h(row,col).marker, 'Color', [1 0 0]);
Cite As
Yul Kang (2024). figure2struct (https://github.com/yulkang/figure2struct), GitHub. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Versions that use the GitHub default branch cannot be downloaded
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 | minor cosmetic change in the description.
Corrected required MATLAB version to R2015a (due to uniquetol() used in subplot_by_pos - may be updated in the future so that it doesn't depend on uniquetol(). Please comment if you have an older version and are interested.
|
|