горизонтальная полоса прокрутки в MsChart

Где-то в инете я нашел этот код

    private void PopulateChart()
    {
        int elements = 500;
        Random r = new Random();

        List<double> xValues = new List<double>();
        double currentX = 0;
        for (int i = 0; i < elements; i++)
        {
            xValues.Add(currentX);
            currentX = currentX + r.Next(1, 2000);
        }

        List<double> yValues = new List<double>();
        for (int i = 0; i < elements; i++)
        {
            yValues.Add(r.Next(0, 50));
        }

        // remove all previous series
        chart1.Series.Clear();

        var series = chart1.Series.Add("MySeries");
        series.ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Stock;
        //series.XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Auto;

        DateTime baseDate = DateTime.Today;
        for (int i = 0; i < xValues.Count; i++)
        {
            var xDate = baseDate.AddSeconds(xValues[i]);
            var yValue = yValues[i];
            series.Points.AddXY(xDate, yValue);
        }

        // show an X label every itme interval (values in minute 60 = 1 hour)
        chart1.ChartAreas[series.ChartArea].AxisX.Interval = 100.0;
        chart1.ChartAreas[0].AxisX.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Minutes;
        // label format
        chart1.ChartAreas[0].AxisX.LabelStyle.Format = "HH:mm:ss";
    }

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

Добавление полосы прокрутки в элемент управления MS Chart C#

но я не мог применить его с полным функционалом. Может ли кто-нибудь помочь мне в этой проблеме?


person Curiousity    schedule 24.01.2012    source источник
comment
«нормальная» диаграмма (без полосы прокрутки) работает нормально?   -  person Moonlight    schedule 24.01.2012
comment
да, работает нормально.   -  person Curiousity    schedule 24.01.2012


Ответы (1)


Вы включили ось X для масштабирования.

  chart1.ChartAreas["ChartArea1"].CursorX.IsUserEnabled = true;
  chart1.ChartAreas["ChartArea1"].CursorX.IsUserSelectionEnabled = true;
  chart1.ChartAreas["ChartArea1"].AxisX.ScaleView.Zoomable = true;
  chart1.ChartAreas["ChartArea1"].AxisX.ScrollBar.IsPositionedInside = true;
person Joe Vi    schedule 22.07.2013
comment
@ Любопытство помогло? - person Joe Vi; 29.07.2013