Yuki Mita

デベロッパーサポート担当
Twitter : @ig_yuki
UltraChart null を非表示にする方法

年度別のウェブサイトアクセス数をラインチャートで表示するアプリケーションを考えてみましょう。緑のラインが 2016 年、青のラインが 2017 年の実績を示しています。

UltraChart

 

データは DataTable 形式で、月ごとのアクセス数を保持しています。


C#

DataTable dt = new DataTable();
dt.Columns.Add("月", typeof(string));
dt.Columns.Add("2016 年", typeof(decimal));
dt.Columns.Add("2017 年", typeof(decimal));

dt.Rows.Add("1 月", 30000, 40000);
dt.Rows.Add("2 月", 25000, 33000);
dt.Rows.Add("3 月", 20000, 35000);
dt.Rows.Add("4 月", 25000, 35000);
dt.Rows.Add("5 月", 30000, 38000);
dt.Rows.Add("6 月", 35000, 43000);
dt.Rows.Add("7 月", 45000, 55000);
dt.Rows.Add("8 月", 40000, 60000);
dt.Rows.Add("9 月", 50000, null);
dt.Rows.Add("10 月", 60000, null);
dt.Rows.Add("11 月", 66000, null);
dt.Rows.Add("12 月", 70000, null);

 


VB.NET

Dim dt As New DataTable()
dt.Columns.Add("月", GetType(String))
dt.Columns.Add("2016 年", GetType(Decimal))
dt.Columns.Add("2017 年", GetType(Decimal))

dt.Rows.Add("1 月", 30000, 40000)
dt.Rows.Add("2 月", 25000, 33000)
dt.Rows.Add("3 月", 20000, 35000)
dt.Rows.Add("4 月", 25000, 35000)
dt.Rows.Add("5 月", 30000, 38000)
dt.Rows.Add("6 月", 35000, 43000)
dt.Rows.Add("7 月", 45000, 55000)
dt.Rows.Add("8 月", 40000, 60000)
dt.Rows.Add("9 月", 50000, Nothing)
dt.Rows.Add("10 月", 60000, Nothing)
dt.Rows.Add("11 月", 66000, Nothing)
dt.Rows.Add("12 月", 70000, Nothing)

 

UltraChart ではデータポイントに null があると、デフォルトの動作では自動的に 0 に置き換えてグラフを描画致します。上のチャートでは 2017 年 9 月以降の null 値が 0 として描画されます。但し、将来の実績値をグラフ化する際には、null を 0 に置き換えるよりもデータポイントを描画しないことが多いと思います。

 

実装方法

UltraChart では、このような場合に備え、NullHandling プロパティを提供しています。値に DontPlot を指定することで、null のデータポイントは描画されなくなります。


C#

// null のデータポイントを描画しない
UltraChart1.LineChart.NullHandling = Infragistics.UltraChart.Shared.Styles.NullHandling.DontPlot;

 



VB.NET

' null のデータポイントを描画しない
UltraChart1.LineChart.NullHandling = Infragistics.UltraChart.Shared.Styles.NullHandling.DontPlot

 

 

実行結果

実績は 8 月までとなり、9 月以降のデータポイントは描画されなくなりました。

UltraChart

 

オンラインリソース

NullHandling プロパティ (LineChartAppearance)
http://jp.infragistics.com/help/aspnet/infragistics4.webui.ultrawebchart.v16.2~infragistics.ultrachart.resources.appearance.linechartappearance~nullhandling

 

サンプル

サンプルのダウンロード(Infragistics ASP.NET 2016.2 バージョン、C#)

サンプルのダウンロード(Infragistics ASP.NET 2016.2 バージョン、VB.NET)


(サンプルは 16.2.20162.2013 バージョンで作成されました)

Comments

No Comments

Anonymous comments are disabled