Modify colorbar in .fig file

Hello,
Is there anyway to rescale the colors in a figure and hence the colorbar?
eg. Right now colorbar is 0.1 to 0.5 BUT I want the colors in the figure rescaled to 0.1 to 0.7.
Is there anyway to do this without replotting the figure?
Thank you, S

回答(7 个)

Tom
Tom 2012-2-23

1 个投票

Try: caxis([0.1 0.7])

1 个评论

+1, You're right, this is probably more what sas0701 is looking for.

请先登录,再进行评论。

figure;
imagesc(magic(20));
h = colorbar;
pause %pause so you can see the change on the next line
set(h,'ylim',[30 60]);
Like this?
sas0701
sas0701 2012-2-23

0 个投票

Hi, Do I have to something special in terms of loading the figure (just opening it up and typing caxis does not work)?
Thanks, S

2 个评论

I tried it by opening a saved figure which had a color bar on, and it worked for me. But maybe you could try what Sean wrote, though you'll have to find the handle of the color bar yourself:
someone smarter than me might know a quicker way, but to get started you can do H=get(gcf,'children'), and find which one of those has the tag 'Colorbar'
h = findobj('tag','Colorbar')

请先登录,再进行评论。

sas0701
sas0701 2012-2-23

0 个投票

Hi,
I tried both ways.I first open up a saved .fig file
1)caxis does not change anything 2)set(h...) changes colorbar limits but does not rescale figure colors..
Help!

3 个评论

What do you mean by rescaling - relative to what? Do you want new colors? A picture of the figure might be useful
Hi, Is there a way to attach a file here?
Post the image to a free webhosting site and then use the << url>> tag to poast it in your question. Edit your original question to include the new info:
http://www.mathworks.com/matlabcentral/answers/7924-where-can-i-upload-images-and-files-for-use-on-matlab-answers

请先登录,再进行评论。

sas0701
sas0701 2012-2-23

0 个投票

I am trying to modify the CLim in the above saved figure..i.e. without creating a new figure.
sas0701
sas0701 2012-2-24

0 个投票

Hi, Anybody? Want to modify CLim in a saved figure without regenerating it.
Thanks,

2 个评论

CLim is the property of an axes; so get the children of the figure, and modify the clim property of them using set()
This worked.
Open figure. Manually click on it (for some reason this needs to be done) to select it.
set(gca,'CLim',[a b])
This rescales the colors in the figure and updates the colorbar.
Thank you Sean!

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Orange 的更多信息

提问:

2012-2-23

编辑:

S.
2013-10-24

Community Treasure Hunt

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

Start Hunting!

Translated by