このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
setup
クラス: matlab.graphics.chartcontainer.ChartContainer
パッケージ: matlab.graphics.chartcontainer
チャート コンテナー サブクラスのインスタンスを設定
構文
setup(obj)
説明
setup(
はチャートの初期状態を設定します。これは、チャートが作成される際に 1 回実行されます。名前と値のペアの引数としてチャートのコンストラクター メソッドに渡されたプロパティ値はすべて、obj
)setup
メソッドの実行後に代入されます。
このメソッドを定義して、クラスの新しいインスタンスごとに初期化コードを実行します。たとえば、このメソッドを使用すると、基となるグラフィックス オブジェクトを作成し、それらのオブジェクトで初期プロパティ値を設定できます。
入力引数
obj
— クラスのオブジェクト
チャート オブジェクト
matlab.graphics.chartcontainer.ChartContainer
基底クラスから継承するクラスのオブジェクト。
例
滑らかなラインのプロット
青色の点線を平滑化バージョンのラインとともに使用して一連のデータをプロットする、SmoothPlot
というクラスを定義します。
このクラスを定義するには、次の機能をもつ以下のクラス定義を含む SmoothPlot.m
というファイルを作成します。
元のラインの x 座標データと y 座標データを保存する
XData
とYData
というパブリック プロパティ。滑らかなラインの色と幅を制御する
SmoothColor
とSmoothWidth
というパブリック プロパティ。元のデータと平滑化データの
Line
オブジェクトを保存するOriginalLine
とSmoothLine
というプライベート プロパティ。OriginalLine
およびSmoothLine
を初期化するsetup
メソッド。ユーザーがプロパティの値を変更したときにプロットを更新する
update
メソッド。平滑化バージョンの
YData
を計算するcreateSmoothData
メソッド。
classdef SmoothPlot < matlab.graphics.chartcontainer.ChartContainer properties XData (1,:) double = NaN YData (1,:) double = NaN SmoothColor (1,3) double {mustBeGreaterThanOrEqual(SmoothColor,0),... mustBeLessThanOrEqual(SmoothColor,1)} = [0.9290 0.6940 0.1250] SmoothWidth (1,1) double = 2 end properties(Access = private,Transient,NonCopyable) OriginalLine (1,1) matlab.graphics.chart.primitive.Line SmoothLine (1,1) matlab.graphics.chart.primitive.Line end methods(Access = protected) function setup(obj) % Create the axes ax = getAxes(obj); % Create the original and smooth lines obj.OriginalLine = plot(ax,NaN,NaN,'LineStyle',':'); hold(ax,'on') obj.SmoothLine = plot(ax,NaN,NaN); hold(ax,'off') end function update(obj) % Update line data obj.OriginalLine.XData = obj.XData; obj.OriginalLine.YData = obj.YData; obj.SmoothLine.XData = obj.XData; obj.SmoothLine.YData = createSmoothData(obj); % Update line color and width obj.SmoothLine.Color = obj.SmoothColor; obj.SmoothLine.LineWidth = obj.SmoothWidth; end function sm = createSmoothData(obj) % Calculate smoothed data v = ones(1,10)*0.1; sm = conv(obj.YData,v,'same'); end end end
次に、x
と y
のベクトルのペアを作成します。ChartContainer
クラスによって提供される SmoothPlot
コンストラクター メソッドを呼び出すことにより、x
と y
をプロットします。'XData'
と 'YData'
の名前と値のペアの引数を指定して、オブジェクトを c
として返します。
x = 1:1:100; y = 10*sin(x./5) + 8*sin(10.*x + 0.5); c = SmoothPlot('XData',x,'YData',y);
c
を使用して、滑らかなラインの色を赤に変更します。
c.SmoothColor = [1 0 0];
バージョン履歴
R2019b で導入R2020a: ChartContainer
サブクラスが setup
メソッドの実行後にプロパティ値を割り当てる
ChartContainer
サブクラスのインスタンスを作成し、プロパティの名前と値のペアの引数をコンストラクターに渡すと、プロパティ値は setup
メソッドの実行後に代入されます。R2019b では、プロパティ値は setup
メソッドの実行前に割り当てられます。
使用しているクラスの setup
メソッドがオブジェクト上のプロパティの値を参照する場合は、次のいずれかの方法でコードを更新できます。
プロパティを定義するときに既定値を割り当てる。
プロパティを参照するコードを
update
メソッドに移動する。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)