TrueChart for WinForms (C1Chart2D)
単位コードタイプ
ChartData オブジェクトの概要 > 関数のプロット > コード文字列を使用して関数を定義する > 単位コードタイプ

コードタイプが単位の場合、関数の CodeText プロパティは完全なコンパイル単位のテキストを持っている必要があります。単位は、UserFunction 名前空間に Calculator クラスを持ち、さらに ISimpleFunction インタフェースも実装している必要があります。

Visual Basic コードの書き方

Visual Basic
コードのコピー
Dim code As String = _
"Namespace UserFunction" & vbNewLine & _
"  Class Calculator" & vbNewLine & _
"    Implements ISimpleFunction" & vbNewLine & _
  "    Public Function Calculate(x As Double) As Double _" & vbNewLine & _
  "      Implements ISimpleFunction.Calculate" & vbNewLine & _
  "      Dim x2 As Double = x*x" & vbNewLine & _
  "      if( x<0)" & vbNewLine & _
  "        return -x" & vbNewLine & _
  "      else" & vbNewLine & _
  "        return -0.5*x2" & vbNewLine & _
  "      End If" & vbNewLine & _
  "    End Function" & vbNewLine & _
  "  End Class" & vbNewLine & _
  "End Namespace"
 
Dim yf As C1.Win.C1Chart.YFunction = New C1.Win.C1Chart.YFunction()
 
yf.CodeType = C1.Win.C1Chart.FunctionCodeTypeEnum.Unit
yf.CodeLanguage = C1.Win.C1Chart.FunctionCodeLanguageEnum.VB
yf.CodeText = code
 
yf.MinX = -5
yf.MaxX = 5
yf.LineStyle.Color = Color.Green
yf.LineStyle.Thickness = 3
 
C1Chart1.ChartGroups(0).ChartData.FunctionsList.Add(yf)

C# コードの書き方

C#
コードのコピー
string code =
"namespace UserFunction" +
"{" +
"  class Calculator : ISimpleFunction" + 
"  {" +
"    public double Calculate(double x)" + 
"    {" + 
"      double x2 = x*x;" + 
"      if( x<0)" + 
"        return -x;" + 
"      else" + 
"        return -0.5*x2;" +
"    }" + 
"  }" + 
"}";
 
C1.Win.C1Chart.YFunction yf = new C1.Win.C1Chart.YFunction();
 
yf.CodeType = C1.Win.C1Chart.FunctionCodeTypeEnum.Unit;
yf.CodeText = code;
 
yf.MinX = -5;
yf.MaxX = 5;
yf.LineStyle.Color = Color.Green;
yf.LineStyle.Thickness = 2;
 
c1Chart1.ChartGroups[0].ChartData.FunctionsList.Add( yf);
関連トピック