Управление диаграммой C# AxisX

У меня есть элемент управления диаграммы, в котором по оси X нанесен ряд дат. Есть 120 дат, каждая для другого дня. Когда эти даты нанесены на график, график оборачивается вокруг себя и строит график в виде нескольких линий (в основном он обведен вокруг всех 120 дат, потому что он не может вписать их в пространство)

Я установил минимальное значение для первой даты в диапазоне и максимальное значение для последней даты в диапазоне

reportChartArea.AxisX.Minimum = this._list.First().DATE.ToOADate();
reportChartArea.AxisX.Maximum = this._list.Last().DATE.ToOADate();

Я также установил тип интервала в дни

reportChartArea.AxisX.IntervalType = DateTimeIntervalType.Days;
reportChartArea.AxisX.Interval = 4;
reportChartArea.AxisX.IntervalOffset = 1;
reportChartArea.AxisX.IntervalAutoMode = IntervalAutoMode.VariableCount;

Затем я создаю серию

Series price = new Series();
price.Font = new Font("Lucida Sans Unicode", 6f);
price.Color = Color.FromArgb(49, 116, 175);
price.XValueType = ChartValueType.DateTime;
price.YValueType = ChartValueType.Double;
price.Legend = price.Name;
price.ChartType = SeriesChartType.Line;
price.YAxisType = AxisType.Secondary;
reportChart.Legends.Add(price.Name);

и, наконец, я перебираю свой список, чтобы построить данные

foreach (var p in this._list)
{
    DataPoint p1 = new DataPoint(p.DATE.ToOADate(), p.CurrentPrice);
    price.Points.Add(p1);
}

Затем я добавляю точки данных на график

reportChart.Series.Add(price);

график строится на графике, и когда линия достигает определенной точки (около 35), она переворачивается на себя и строит следующие 35 или около того рядом с предыдущей и так далее, пока не достигнет конца. Я добавил это в свой код, чтобы проверить это, и он не зацикливается, а просто отображает первые 35 точек данных

int i = 0;
foreach (var p in this._list)
{
    if(i<= 35)
    {
        DataPoint p1 = new DataPoint(p.DATE.ToOADate(), p.CurrentPrice);
        price.Points.Add(p1);
    }
    i++;
}

как только число точек превышает это число, оно зацикливается на себе, превращая график в беспорядок. Кто-нибудь может увидеть, где я здесь не так? Конечно, настройки min и max должны решить эту проблему, но это не так

0 ответов

Другие вопросы по тегам