1

我的代码旨在根据percentsolar的值生成一系列(不同颜色的)图(因此“for”循环从 1 到 percentsolar 的长度)。第一系列图(存储在percentimprovement1中的数组)应绘制在第一个 y 轴上,第二系列图(存储在sizup21中的数组)应绘制在第二个 y 轴上。不幸的是,即使sizeup21中的数组不同(即它们不应显示为同一行),第二个“系列”图也仅显示为一行。

下面是我的代码:

dashes = {':', '-'};
colors = {'b', 'r', 'm', 'c', 'k', 'w', 'g', 'y'};
for e=1:length(percentsolar)
    [ax, h1, h2] = plotyy(randomentries, percentimprovement1(:,e), randomentries, sizeup21(:,e));
    set(h1,'LineStyle',dashes{1});
    set(h1,'color', colors{e});
    set(ax(1),'YLim',[0 100]);
    set(ax(1),'YTick',0:20:100);
    set(h2,'LineStyle', dashes{2});
    set(h2,'color',colors{e});
    set(ax(2),'YLim',[0 max(max(sizeup21))])
    set(ax(2),'YTick',0:1:max(max(sizeup21)))
    hold on;
end
4

1 回答 1

3

存在问题plotyy并保持。plotyy创建两个绘图句柄。坚持不按预期工作。

解决方法:

%add first tow data sets:
[axis, l, r] = plotyy(...)
hold(axis(1),'on')
hold(axis(2),'on')
%add another data set, left axis
plot(axis(1), x, y)
%add another data set, right axis
plot(axis(2), x, y)
于 2013-10-28T21:29:00.170 回答