【问题标题】:Plot Overlay MATLAB绘制叠加 MATLAB
【发布时间】:2010-12-17 05:03:30
【问题描述】:

如何在 MATLAB 中将一个绘图放置在另一个绘图的角落(或任何地方)?

我的对数数据在图的右上角有很大的空白。在空白区域中,我想覆盖一个较小的图,其中包含该空白区域中日志图的放大版本(有点像放大视图)。

在您告诉我它无法完成之前,我想提一下我已经看到它在行动中。如果缺少我的描述,请告诉我,我会尽力向您更好地描述。

【问题讨论】:

    标签: matlab plot overlay figure


    【解决方案1】:

    一个例子:

    x = 1:20;
    y = randn(size(x));
    
    plot(x, y,'LineWidth',2)
    xlabel('x'), ylabel('y'), title('Plot Title')
    
    h = axes('Position', [.15 .65 .2 .2], 'Layer','top');
    bar(x,y), title('Bar Title')
    axis(h, 'off', 'tight')
    

    【解决方案2】:

    您可以使用axes 属性'position''units' 并过度使用它们。注意在大轴之后创建小轴或使用uistack()函数,使大不隐藏小轴。

    你不能做的是让另一个轴子成为另一个轴(就像 Mathworks 对 legend 所做的那样)。但无论如何你都不需要它。

    对于第二个情节,您必须使用 axesline 而不是 plothold on

    单位为'normalized'(这是默认值)允许在调整父图形大小(例如手动最大化)时统一调整大小的外观。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-02
      • 2011-11-04
      • 2020-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多