Filter löschen
Filter löschen

Modify colorbar in .fig file

13 Ansichten (letzte 30 Tage)
sas0701
sas0701 am 23 Feb. 2012
Bearbeitet: S. am 24 Okt. 2013
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

Antworten (7)

Tom
Tom am 23 Feb. 2012
Try: caxis([0.1 0.7])
  1 Kommentar
Sean de Wolski
Sean de Wolski am 23 Feb. 2012
+1, You're right, this is probably more what sas0701 is looking for.

Melden Sie sich an, um zu kommentieren.


Sean de Wolski
Sean de Wolski am 23 Feb. 2012
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 am 23 Feb. 2012
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 Kommentare
Tom
Tom am 23 Feb. 2012
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'
Sean de Wolski
Sean de Wolski am 23 Feb. 2012
h = findobj('tag','Colorbar')

Melden Sie sich an, um zu kommentieren.


sas0701
sas0701 am 23 Feb. 2012
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 Kommentare
sas0701
sas0701 am 23 Feb. 2012
Hi, Is there a way to attach a file here?
Sean de Wolski
Sean de Wolski am 23 Feb. 2012
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

Melden Sie sich an, um zu kommentieren.


sas0701
sas0701 am 23 Feb. 2012
Hi,
Please see attached file here: http://fileslap.com/9hn/Coh070911fx

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

sas0701
sas0701 am 24 Feb. 2012
Hi, Anybody? Want to modify CLim in a saved figure without regenerating it.
Thanks,
  2 Kommentare
Sean de Wolski
Sean de Wolski am 24 Feb. 2012
CLim is the property of an axes; so get the children of the figure, and modify the clim property of them using set()
sas0701
sas0701 am 24 Feb. 2012
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!

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by