TrueChart for WinForms (C1Chart2D)
イベントを使用して関数の関数値を計算する
ChartData オブジェクトの概要 > 関数のプロット > 関数の値を計算する > イベントを使用して関数の関数値を計算する

ソースコードを CodeTextCodeTextXCodeTextY のいずれかのプロパティに追加する代わりに、イベントデリゲートを使用してイベントメソッドを指定して、適切な関数値を計算できます。

イベントデリゲートを使用した場合、関数値は YFunction クラスのオブジェクトの CalculateY イベントで計算されます。ParametricFunction クラスのオブジェクトの場合、各計算座標の1つ、CalculateXCalculateY の2つのイベントを設定する必要があります。非 null イベントのデリゲートの場合、イベントを使用して対応する関数値を計算する必要があり、それは、対応する CodeText プロパティも YFunction または ParametricFunction クラスオブジェクトで指定する場合でも同じです。イベントを使用するには、プログラマは適切なイベントハンドラを提供する必要があります。

Visual Basic コードの書き方

Visual Basic
コードのコピー
Private Sub Button_Click(ByVal sender As System.Object, _  ByVal e As System.EventArgs) Handles Button.Click    
  Dim yf As C1.Win.C1Chart.YFunction = New C1.Win.C1Chart.YFunction()  
  AddHandler yf.CalculateY, AddressOf Function_Calculate    
  yf.MinX = -5    
  yf.MaxX = 5   
  yf.LineStyle.Color = Color.DarkBlue   
  yf.LineStyle.Thickness = 3         
  C1Chart1.ChartGroups(0).ChartData.FunctionsList.Add(yf)   
End Sub     
    
Private Sub Function_Calculate(ByVal sender As Object, _  ByVal e As C1.Win.C1Chart.CalculateFunctionEventArgs)    
  e.Result = e.Parameter * e.Parameter * e.Parameter    ' y = x*x*x   
End Sub

C# コードの書き方

C#
コードのコピー
private void button_Click(object sender, System.EventArgs e)   

{    
  C1.Win.C1Chart.YFunction yf = new C1.Win.C1Chart.YFunction();        
  yf.MinX = -5;    
  yf.MaxX = 5;    
  yf.LineStyle.Color = Color.DarkBlue;    
  yf.LineStyle.Thickness = 2;    
  yf.CalculateY += new C1.Win.C1Chart.CalculateFunctionEventHandler( Function_Calculate);         
  c1Chart1.ChartGroups[0].ChartData.FunctionsList.Add( yf);    
}
         
private void Function_Calculate( object sender, C1.Win.C1Chart.CalculateFunctionEventArgs e)   
{   
  e.Result = e.Parameter * e.Parameter * e.Parameter; // y = x*x*x    
}
関連トピック