Clear Filters
Clear Filters

extract data from figure

31 views (last 30 days)
siva kumar
siva kumar on 4 Mar 2022
Commented: siva kumar on 7 Mar 2022
HI, I am extarcting data from a THD figure in matlab.
The following is the code that i used. I am getting only 600 values of x-axis. but my figure has 15000 values at x-axis.
I request you to help me. I have attached the file.
clear all;
close all;
clc;
fig=openfig('vmpcnew1thd.fig');
dataObjsY = findobj(fig,'-property','YData');
y1 = dataObjsY(1).YData;
y2 = dataObjsY(2).YData;
dataObjsX = findobj(fig,'-property','XData');
x1 = dataObjsX(1).XData;
x2 = dataObjsX(2).XData;
Thanks and regards,
Sivakumar

Accepted Answer

Ankit
Ankit on 4 Mar 2022
Edited: Ankit on 4 Mar 2022
*.fig file are basically *.mat files. You can try following in order to extract data from *.mat files
plot(rand(100,1)); % create a plot
hold on;
plot(2*rand(100,1));
hgsave(gcf,'vmpcnew1thd'); % saving a plot to a figure
data_extract = load('vmpcnew1thd.fig','-mat'); %load data to workspace
X1 = data_extract.hgS_070000.children.children(1).properties.XData; % reading xdata
X2 = data_extract.hgS_070000.children.children(2).properties.XData;
Y1 = data_extract.hgS_070000.children.children(1).properties.YData; %reading y data
Y2 = data_extract.hgS_070000.children.children(2).properties.YData;
  5 Comments
Ankit
Ankit on 4 Mar 2022
figure file is not correct. can you attach the one whos png you attached above..
siva kumar
siva kumar on 7 Mar 2022
I SOVED THE ISSUE. THANKS A LOT.

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Object Identification in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!