I've been researching this a while and can't find what I need - I can change the limits on the axis for graphs etc without a problem, but what I need is to change the numbers on the scale, without actually changing the scale of the graph (not sure if I'm explaining right). So I have a pcolor plot, but wish to change the numbers on the axes, without changing the axes limits (So I still want to show the same data, but with the axes reading different values) - for example, the current values multiplied by a constant. Thanks

댓글 수: 1

Veronica Lucchese
Veronica Lucchese 2019년 2월 27일
편집: Veronica Lucchese 2019년 2월 27일
In matlab, the scale is called the c-axis. In order to manipulate the scale, you must manipulate the c-axis values
type in the command window:
caxis([0 0.1]) or whatever you want you scale limits to be

댓글을 달려면 로그인하십시오.

 채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2016년 4월 18일
편집: Azzi Abdelmalek 2016년 4월 18일

1 개 추천

You mean to change the ticks of your axis. For example
x=0:10
y=cos(x)
plot(x,y)
number_of_ticks=5
xt=xlim
set(gca,'xtick',linspace(xt(1),xt(2),number_of_ticks))

댓글 수: 10

Jamie Shelley
Jamie Shelley 2016년 4월 18일
Thanks, but I'm not really sure, I tried doing that but it didn't work. I have the plot but I want to edit the numbers on the axis, but using that code, it returned an error.
Azzi Abdelmalek
Azzi Abdelmalek 2016년 4월 18일
편집: Azzi Abdelmalek 2016년 4월 18일
It depends on what you did, post what you have tried
Jamie Shelley
Jamie Shelley 2016년 4월 18일
편집: Azzi Abdelmalek 2016년 4월 18일
x=randi(10,10)
pcolor(x)
number_of_ticks=5
xt=xlim
set(gca,'xtick',linspace(xt(1),xt(2),number_of_ticks))
So it changes the values on the axis, but it still goes from zero to ten, but I want it to read from zero to 500 but have it say 500 where it currently says 10 if you get me? Thanks
n=numel(get(gca,'xtick')),
xt=arrayfun(@num2str,linspace(0,500,n),'un',0),
set(gca,'xticklabel',xt)
Jamie Shelley
Jamie Shelley 2016년 4월 18일
Yes! Thank you so much, I've been trying to make it work for four hours!
Jamie Shelley
Jamie Shelley 2016년 4월 18일
Sorry to be a pain, but I can't get it to work on a GUI, any ideas why please?
Azzi Abdelmalek
Azzi Abdelmalek 2016년 4월 18일
Post the part of your code
Jamie Shelley
Jamie Shelley 2016년 4월 18일
편집: Azzi Abdelmalek 2016년 4월 18일
handles.x=randi(10,10)
pcolor(handles.x)
handles.n=numel(get(gca,'xtick')),
handles.xt=arrayfun(@num2str,linspace(0,500,handles.n),'un',0),
set(gca,'xticklabel',handles.xt)
Azzi Abdelmalek
Azzi Abdelmalek 2016년 4월 18일
This works for me
Jamie Shelley
Jamie Shelley 2016년 4월 18일
I don't understand why it still won't work for me, I can't see what's wrong with it

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Kelly Kearney
Kelly Kearney 2016년 4월 18일

0 개 추천

You can simply change the YTickLabel property:
ax = axes;
plot(1:10)
ax.YTickLabel = strtrim(cellstr(num2str(2 * ax.YTick')))

댓글 수: 1

Jamie Shelley
Jamie Shelley 2016년 4월 18일
Thanks, but that didn't work, it just deleted the plot from the figure

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 2-D and 3-D Plots에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by