トップ回答者
Chartコントロールで、特定の軸の表示だけ色を変更するには?

質問
-
現在VisualStudio2010(.NET Framework4.0)のC#でChartコントロールを利用して、縦棒グラフを作成しております。
X軸に日付を表示させているのですが、日付をセットする時に土日だったら文字の色を赤色に変更することは可能でしょうか。
最初は土日の範囲のみ、棒グラフの背景を赤色とかにしたかったのですが、そのような設定する方法が見当たりませんでしたので、
文字の色だけでも変更しようかと考えています。
それでも無理であれば「**/**(土)」とかにするしかないとは思いますが、太字やイタリックには出来そうなので、質問させて頂きました。
可能か不可能か教えて頂けないでしょうか。
よろしくお願い致します。
回答
-
こんな?
DataSet1.DataTable1DataTable t = new DataSet1.DataTable1DataTable(); var r=t.NewDataTable1Row(); r.X = 0; r.Y = 0; t.Rows.Add(r); r = t.NewDataTable1Row(); r.X = 1; r.Y = 5; t.Rows.Add(r); r = t.NewDataTable1Row(); r.X = 2; r.Y = 7; t.Rows.Add(r); this.chart1.DataSource = t; //using System.Windows.Forms.DataVisualization.Charting; var area = this.chart1.ChartAreas[0]; //this.chart1.Series[0].XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.DateTime; CustomLabel label; label =new CustomLabel(-0.5,0.5,"2000/1/1",0, LabelMarkStyle.None, GridTickTypes.All); label.ForeColor= Color.Red ; area.AxisX.CustomLabels.Add(label); label = new CustomLabel(0.5, 1.5, "2000/1/2", 0, LabelMarkStyle.None, GridTickTypes.All); label.ForeColor = Color.Green; area.AxisX.CustomLabels.Add(label); label = new CustomLabel(1.5, 2.5, "2000/1/3", 0, LabelMarkStyle.None, GridTickTypes.All); label.ForeColor = Color.Blue; area.AxisX.CustomLabels.Add(label);
個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)
- 回答としてマーク レガシープログラマー 2013年8月1日 9:59
すべての返信
-
こんな?
DataSet1.DataTable1DataTable t = new DataSet1.DataTable1DataTable(); var r=t.NewDataTable1Row(); r.X = 0; r.Y = 0; t.Rows.Add(r); r = t.NewDataTable1Row(); r.X = 1; r.Y = 5; t.Rows.Add(r); r = t.NewDataTable1Row(); r.X = 2; r.Y = 7; t.Rows.Add(r); this.chart1.DataSource = t; //using System.Windows.Forms.DataVisualization.Charting; var area = this.chart1.ChartAreas[0]; //this.chart1.Series[0].XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.DateTime; CustomLabel label; label =new CustomLabel(-0.5,0.5,"2000/1/1",0, LabelMarkStyle.None, GridTickTypes.All); label.ForeColor= Color.Red ; area.AxisX.CustomLabels.Add(label); label = new CustomLabel(0.5, 1.5, "2000/1/2", 0, LabelMarkStyle.None, GridTickTypes.All); label.ForeColor = Color.Green; area.AxisX.CustomLabels.Add(label); label = new CustomLabel(1.5, 2.5, "2000/1/3", 0, LabelMarkStyle.None, GridTickTypes.All); label.ForeColor = Color.Blue; area.AxisX.CustomLabels.Add(label);
個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)
- 回答としてマーク レガシープログラマー 2013年8月1日 9:59