2016-03-22 25 views
0

私はAxesボックスを持ったGUIウィンドウを持っています。私は、このAxes1ボックスでプロット関数を使うときにY軸方向を逆にしたいと思います。私が使用しようとすると言うことができます:Axesの逆Y軸

set(axes1,'YDir','reverse'); 

私はmatlab.graphics.chart.primitive.Line /を使用して、次のエラー

エラーがラインクラスにはYDIRプロパティはありません
を設定してもらいます。私はこのaxes1のプロパティをチェックするとき

私は、だから私は逆に、通常のプロパティインスペクタにYDIRを変更しようと、それは動作しませんでした

AlignVertexCenters: 'off' 
      Annotation: [1x1 matlab.graphics.eventdata.Annotation] 
      BeingDeleted: 'off' 
      BusyAction: 'queue' 
     ButtonDownFcn: '' 
       Children: [0x0 GraphicsPlaceholder] 
       Clipping: 'on' 
       Color: [1 0 0] 
      CreateFcn: '' 
      DeleteFcn: '' 
      DisplayName: '' 
     HandleVisibility: 'on' 
       HitTest: 'on' 
     Interruptible: 'on' 
       LineJoin: 'round' 
      LineStyle: '-' 
      LineWidth: 1 
       Marker: 'none' 
     MarkerEdgeColor: 'auto' 
     MarkerFaceColor: 'none' 
      MarkerSize: 6 
       Parent: [1x1 Axes] 
     PickableParts: 'visible' 
       Selected: 'off' 
    SelectionHighlight: 'on' 
        Tag: '' 
        Type: 'line' 
     UIContextMenu: [0x0 GraphicsPlaceholder] 
       UserData: [] 
       Visible: 'on' 
       XData: [1x3937 double] 
      XDataMode: 'manual' 
      XDataSource: '' 
       YData: [1x3937 double] 
      YDataSource: '' 
       ZData: [1x0 double] 
      ZDataSource: '' 

を取得します。 私はflipudを使用しようとしましたが、Y軸上の値ではなく線を反転させるだけです。

答えて

2

axes1と呼んでいるのは、実際にはlineオブジェクトです。オブジェクトのTypeプロパティを取得することで、これを簡単に確認できます。あなたが代わりにそれにYDirを設定することをお勧めします

get(axes1, 'Type') 

% Or in newer versions of MATLAB 
class(axes1) 

親がを軸です。我々は簡単にancestor機能を使ってそれを得ることができます。あなたの特定のケースのために単に

hax = ancestor(axes1, 'axes'); 
set(hax, 'YDir', 'reverse') 

以上:将来的には

set(axes1.Parent, 'YDir', 'reverse') 

、慎重にエラーメッセージの全体内容を読み取ります。ここでは、コマンドラインが機能していないことを明示しています。

+0

また 'HAX = axes1.Parent;' 'それはhggroup'内ではありません、あなたがさて、OPの例では、オブジェクトは' Parent'を持っていると言う2014b + :) –

+1

@LuisMendoを動作するはずです軸オブジェクト – Suever

+0

を使用している場合のみ –

関連する問題