Remove common factor from axis

4 Ansichten (letzte 30 Tage)
Pierce Brady
Pierce Brady am 2 Aug. 2011
Hey, I'm trying to remove the common factor from the axis of a plot.
This is what i'm doing. (its a custom color bar)
cX = [1 2];
cY = repmat(linspace(1,8e6,256),2,1).';
h.figure = figure;
h.panel = uipanel('Parent',h.figure);
h.axes = axes('Parent',h.panel);
h.surf = surf('Parent',h.axes,'XData',cX ,'YData',cY,'ZData',cY,'CData',cY);
set(h.surf,'Facecolor','interp','Edgecolor','none')
set(h.axes,'View',[90 90]...
,'XTick',[],'XTickLabel',[]...
,'ZTick',[],'ZTickLabel',[]...
,'YTick',(1:8)*1e6,'YTickLabel',{'1M','2M','3M','4M','5M','6M','7M','8M'}...
,'YLim',[min(cY(:)) max(cY(:))])
Now the final plot has
1M 2M ... 8M 1x10^6
along the axis
I would like the axis to just be
1M 2M ... 8M
without the common factor of 1x10^6
Can anyone help me achieve this.
  1 Kommentar
Jan
Jan am 2 Aug. 2011
Please use code formatting. See the "{} Code" button and the "? Markup" link.

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Kelly Kearney
Kelly Kearney am 2 Aug. 2011
Change the renderer from OpenGL to zbuffer.
set(gcf, 'renderer', 'zbuffer');
Why this fixes the problem, I really have no idea. But I encounter it a lot when I add dateticks to my axes. Not sure if it's intended behavior or a bug, but most renderers eliminate the factor when manual tick labels are added; OpenGL does not (or at least doesn't always).

Pierce Brady
Pierce Brady am 2 Aug. 2011
Problem half sorted.
cX = [1 2];
cY = repmat(linspace(1,8,256),2,1).';
cZ = repmat(linspace(1,8e6,256),2,1).';
h.figure = figure;
h.panel = uipanel('Parent',h.figure);
h.axes = axes('Parent',h.panel);
h.surf = surf('Parent',h.axes,'XData',cX,'YData',cY,'ZData',cZ,'CData',cZ);
set(h.surf,'Facecolor','interp','Edgecolor','none')
set(h.axes,'View',[90 90]... ,'XTick',[],'XTickLabel',[]...
,'ZTick',[],'ZTickLabel',[]...
,'YTick',(1:8),'YTickLabel',... {'1M','2M','3M','4M','5M','6M','7M','8M'}...
,'YLim',[min(cY(:)) max(cY(:))])
Doing this i avoid the common factor, but i'd still like to know how to remove the 1x10^6 without changing the magnitude of the data

Kategorien

Mehr zu Line Plots finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by