2

我正在使用以下代码:

x = linspace(0, 9, 10);
y1 = x;
y2 = x.^2;
y3 = x.^4;

myfig = figure('Position', [500 500 400 320]); %[left, bottom, width, height]:
ax1 = gca;
hold on
p1 = plot(x,y1,'x--r');
p2 = plot(x,y2,'*-b');

xlabel('blaaa');
ylabel('fooo'); 
xlim([0 max(x)]);
ax2 = axes('Position',get(ax1,'Position'),...
       'XAxisLocation','top',...
       'YAxisLocation','right',...
       'Color','none',...
       'XTickLabel', [],...
       'XColor','k','YColor','k');
ylabel(ax2, 'asdasd');
linkaxes([ax1 ax2],'x');
hold on
p3 = plot(x,y3,'s:g','Parent',ax2);

legend([p1 p2 p3], {'one', 'two', 'three'}, 'Location', 'NorthWest');

而未显示右 y 标签:有没有办法通过减少左边缘和左 y 标签之间的边距或通过减小实际绘制数据的宽度而不调整图形窗口大小来显示它?

谢谢

编辑:添加图像:

在此处输入图像描述 减小红色边距或“绿色”大小,因为蓝色箭头所在的位置,现在不再显示 y 标签,因为它不适合!

4

1 回答 1

1

尝试更换线路:

ax1 = gca;

和:

ax1 = axes('Position',[0.11 0.11 0.75 0.812]);

标准化单位手动设置轴位置/大小。

在此处输入图像描述

于 2011-07-04T19:42:41.587 回答