Hi,
i wrote the following (minimal) code:
clear all
close all
X = -3:0.3:3;
a = 1;
b = 2;
c = 1;
Y = a + b * (X - c).^2 + 0.4* rand(1,length(X));
h = figure;
a1 = gca;
a2 = axes('xaxislocation','top','yaxislocation','right','color','none');
hold on
hData = scatter(X,Y);
linkaxes([a1 a2]);
axis([a1 a2], [min(X) max(X) min(Y) max(Y)])
hold off
Apparantly, I wanted to have a graph with axes on all 4 sides. I thought with "linkaxes" i can link the axes in a way that they are always scaled in the same way. For the x-axes it seems to work well, but the y-axes appears to have some different scaling factors (which you can see, if you resize a little bit the graph-window.
Can anybody explain what i did wrong?
Thanks!

3 Kommentare

Adam
Adam am 17 Aug. 2014
Your code works fine for me for both x and y axes on resizing.
Benjamin
Benjamin am 17 Aug. 2014
Bearbeitet: Benjamin am 17 Aug. 2014
They have the same range. this works also perfect for me. Just the length of the axes is different. In the picture you can see what i mean (eg. the "30" left and right is not at the same heigth.... now i also saw that the data are going down below the graph.
EDIT: now also with the promised graph :-)
dpb
dpb am 17 Aug. 2014
Can't reproduce that effect here--what Matlab release and OS? Perhaps try changing the renderer setting if it's somehow related to a local video driver issue.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Benjamin
Benjamin am 17 Aug. 2014

0 Stimmen

Matlab R2011b and Windows 8. I could solve the problem by adding
set(a1, 'Position', [0.13 0.13 0.74 0.74]);
set(a2, 'Position', get(a1, 'Position'));
I was just thinking "linkaxes" is doing that automatically

1 Kommentar

dpb
dpb am 17 Aug. 2014
Probably a version enhancement/bug fix since that release.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating, Deleting, and Querying Graphics Objects finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 17 Aug. 2014

Kommentiert:

dpb
am 17 Aug. 2014

Community Treasure Hunt

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

Start Hunting!

Translated by