MATLAB Answers

How to save the axes include x-axis and y-axis

3 views (last 30 days)
han han
han han on 9 Aug 2020
Commented: han han on 9 Aug 2020
I got a .jpg through my code, but it doesn't have x-axis and y-axis scales.
What can I do to make my saved jpg have these scales?
function pushbutton1_Callback(hObject, eventdata, handles)
[FileName, PathName, ~] = uiputfile( ...
{'*.jpg'},...
'Save as');
new=FileName(1:end-4);
x = rand(10,1);
y = rand(10,1);
axes(handles.axes1)
scatter(x,y,'^');
axis([0 1 0 1])
H = getframe(ax);
imwrite(H.cdata, [new, '.jpg'])
like [0 0.2 0.4 0.6 0.8 1]

  0 Comments

Sign in to comment.

Answers (1)

Sudheer Bhimireddy
Sudheer Bhimireddy on 9 Aug 2020
Try this, after your axis() line:
ax=gca;
ax.XTick = 0:0.2:1;
ax.XTickLabel = 0:0.2:1;
ax.YTick = 0:0.2:1;
ax.YTickLabel = 0:0.2:1;

  5 Comments

Show 2 older comments
han han
han han on 9 Aug 2020
But this will also save the pushbutton in the gui
Can only axes and include x-axis and y-axis?
Sudheer Bhimireddy
Sudheer Bhimireddy on 9 Aug 2020
Circling back to your original approach of using imwrite, try the following:
H0 = getframe(ax);
H1 = frame2im(H0);
imwrite(H1, [new, '.jpg'])

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!