# Skin - [\[C#\]Chartコントロールを使用して、タスクマネージャー風のグラフを作成する](http://nanoappli.com/blog/archives/2584) - [ChartコントロールTips|Aoplanning](http://aoplanning.com/csharp/csharp-chart01.html) # 基本 ```csharp private void ChartInit() { //チャート設定 var chart = chart1; chart1.Series.Clear(); // チャート全体の背景色を設定 chart.BackColor = Color.Black; chart.ChartAreas[0].BackColor = Color.Transparent; // チャート表示エリア周囲の余白をカットする chart.ChartAreas[0].InnerPlotPosition.Auto = true; chart.ChartAreas[0].InnerPlotPosition.Width = 90; // 100% chart.ChartAreas[0].InnerPlotPosition.Height = 70; // 90%(横軸のメモリラベル印字分の余裕を設ける) chart.ChartAreas[0].InnerPlotPosition.X = 8; chart.ChartAreas[0].InnerPlotPosition.Y = 10; // X,Y軸情報のセット関数を定義 Action setAxis = (axisInfo) => { // 軸のメモリラベルのフォントサイズ上限値を制限 axisInfo.LabelAutoFitMaxFontSize = 8; // 軸のメモリラベルの文字色をセット axisInfo.LabelStyle.ForeColor = Color.White; // 軸タイトルの文字色をセット(今回はTitle未使用なので関係ないが...) axisInfo.TitleForeColor = Color.White; // 軸の色をセット axisInfo.MajorGrid.Enabled = true; axisInfo.MajorGrid.LineColor = ColorTranslator.FromHtml("#008242"); axisInfo.MinorGrid.Enabled = false; axisInfo.MinorGrid.LineColor = ColorTranslator.FromHtml("#008242"); }; // X,Y軸の表示方法を定義 setAxis(chart.ChartAreas[0].AxisY); setAxis(chart.ChartAreas[0].AxisX); chart.ChartAreas[0].AxisX.MinorGrid.Enabled = true; chart.ChartAreas[0].AxisY.Maximum = 1; // 縦軸の最大値を100にする chart.ChartAreas[0].AxisY.Minimum = -1; // 縦軸の最大値を100にする chart.ChartAreas[0].AxisX.Minimum = 0; // 縦軸の最大値を100にする chart.ChartAreas[0].AxisX.Maximum = MAX_COUNT; // 縦軸の最大値を100にする chart.AntiAliasing = AntiAliasingStyles.All; // 折れ線グラフとして表示 Series series_wave = chart.Series.Add("wave"); series_wave.ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.FastLine; // 線の色を指定 series_wave.Color = ColorTranslator.FromHtml("#00FF00"); // 凡例を非表示,各値に数値を表示しない series_wave.IsVisibleInLegend = false; series_wave.IsValueShownAsLabel = false; // スレッシュホルドラインの表示 Series series_hair_line = chart.Series.Add("thresh+"); series_hair_line.ChartType = SeriesChartType.FastLine; series_hair_line.Color = Color.Red; // スレッシュホルドラインの表示 Series series_hair_line_negative = chart.Series.Add("thresh-"); series_hair_line_negative.ChartType = SeriesChartType.FastLine; series_hair_line_negative.Color = Color.Red; // レジェンド消去 chart.Legends.Clear(); } ``` ## Rader [ChartコントロールTips|Aoplanning](http://aoplanning.com/csharp/csharp-chart01.html) ```csharp Chart c1 = this.chart_Contribution; c1.ChartAreas[0].Area3DStyle.Enable3D = true; c1.Series.Clear(); c1.Series.Add(AnalyserAxis1.Name); c1.Series[AnalyserAxis1.Name].ChartType = SeriesChartType.Radar; c1.Series[AnalyserAxis1.Name].BorderWidth = 3; c1.Series[AnalyserAxis1.Name].Color = Color.Transparent; c1.Series[AnalyserAxis1.Name].BorderColor = Color.Turquoise; foreach (var coef in AnalyserAxis1.GetFeatureNameVSCoefValues()) { if(coef.Key == "Bias") { continue; } c1.Series[AnalyserAxis1.Name].Points.AddXY(coef.Key, coef.Value); } c1.Series.Add(AnalyserAxis2.Name); c1.Series[AnalyserAxis2.Name].ChartType = SeriesChartType.Radar; c1.Series[AnalyserAxis2.Name].BorderWidth = 3; c1.Series[AnalyserAxis2.Name].Color = Color.Transparent; c1.Series[AnalyserAxis2.Name].BorderColor = Color.Tomato; foreach (var coef in AnalyserAxis2.GetFeatureNameVSCoefValues()) { if (coef.Key == "Bias") { continue; } c1.Series[AnalyserAxis2.Name].Points.AddXY(coef.Key, coef.Value); } ```