1

私は.Net Chartsで働いています。X軸に日付を表​​示したい 例: 過去 52 週間を選択した場合、過去 52 週間のグラフを表示する必要がありますが、これらの 52 週間の開始日は x 軸にある必要があります。これを行う方法がわかりません..コードで試してみました..

        DateTime Frm = sessionManager.ChartViewPeriodFrom;
        DateTime To = sessionManager.ChartViewPeriodTo;

        double min = Frm.ToOADate();
        double max = To.ToOADate();

        Chart1.ChartAreas["ChartArea1"].AxisX.Minimum = min;
        Chart1.ChartAreas["ChartArea1"].AxisX.Maximum = max;
        Chart1.ChartAreas["ChartArea1"].AxisX.Interval = 7;

ここでは、Frm を「2011 年 9 月 17 日 12:00:00 AM」として取得していますが、チャートでは、最小日付は「2011 年 9 月 21 日 12:00:00 AM」から始まります。これを修正する方法...

私もこのように試してみました..[編集部分]

        Chart1.Series["Series1"].XValueType = ChartValueType.Date;
        Chart1.ChartAreas["ChartArea1"].AxisX.Minimum = (new DateTime(2011, 09, 17, 12, 00, 00)).ToOADate();
        Chart1.ChartAreas["ChartArea1"].AxisX.Maximum = (new DateTime(2012, 09, 08, 12, 00, 00)).ToOADate();
        Chart1.ChartAreas["ChartArea1"].AxisX.Interval = 7;
        Chart1.ChartAreas["ChartArea1"].AxisX.IsMarginVisible = false; 
4

2 に答える 2

2

長い検索の後...上記の問題を修正しました...しかし、それがどのように機能するかはまだわかりません...

        Chart1.ChartAreas["ChartArea1"].AxisX.IntervalAutoMode = IntervalAutoMode.VariableCount;
        Chart1.Series["Series1"].XValueType = ChartValueType.Date;
        DayOfWeek ds = DayOfWeek.Wednesday;
        double dblIntervalOffset = Convert.ToDouble(ds);
        Chart1.ChartAreas["ChartArea1"].AxisX.IntervalOffset = dblIntervalOffset;
        Chart1.ChartAreas["ChartArea1"].AxisX.Minimum = min;
        Chart1.ChartAreas["ChartArea1"].AxisX.Maximum = max;
        Chart1.ChartAreas["ChartArea1"].AxisX.Interval = 7;
        Chart1.ChartAreas["ChartArea1"].AxisX.IsMarginVisible = false;
于 2012-09-13T07:09:25.667 に答える
0

Indexed系列データには属性を設定する必要があります。

于 2015-08-19T08:00:42.173 に答える