Шпаргалка по ZedGraph. Как изменять шаг вывода рисок по осям

Этот пример показывает как поступать в том случае, если у нас есть несколько графиков, которые хотелось бы отобразить вместе, но у каждого из них должна быть своя ось Y.

Все примеры объединены в одном solution для Visual Studio 2005 и написаны на языке C#, скачать их можно отсюда.

Проект в примере - AxisTicks

public partial class Form1 : Form
{
    public Form1 ()
    {
        InitializeComponent ();

        DrawGraph ();
    }


    private double f (double x)
    {
        if (x == 0)
        {
            return 1;
        }

        return Math.Sin (x) / x;
    }


    private void DrawGraph ()
    {
        // Получим панель для рисования
        GraphPane pane = zedGraph.GraphPane;

        // Зделаем чуть помальче шрифт, чтобы уместилось побольше меток
        pane.XAxis.Scale.FontSpec.Size = 10;
        pane.YAxis.Scale.FontSpec.Size = 10;

        // !!!
        // Крупные риски по оси X будут идти с периодом 5
        pane.XAxis.Scale.MajorStep = 5.0;

        // Мелкие риски будут идти с периодом 1
        // Таким образом, между крупными рисками будет 5 делений или 4 риски
        pane.XAxis.Scale.MinorStep = 1.0;

        // Крупные риски по оси Y будут идти с периодом 0.1
        pane.YAxis.Scale.MajorStep = 0.1;

        // А мелкие риски - с периодом 0.05
        // Между крупными рисками по оси Y будет два отсчета или одна риска
        pane.YAxis.Scale.MinorStep = 0.05;

        // Очистим список кривых на тот случай, если до этого сигналы уже были нарисованы
        pane.CurveList.Clear ();

        // Создадим список точек
        PointPairList list = new PointPairList ();

        double xmin = -30;
        double xmax = 30;

        // Заполняем список точек
        for (double x = xmin; x <= xmax; x += 0.01)
        {
            // добавим в список точку
            list.Add (x, f (x));
        }

        // Создадим кривую
        LineItem myCurve = pane.AddCurve ("", list, Color.Blue, SymbolType.None);

        // Обновим данные об осях
        zedGraph.AxisChange ();

        // Обновляем график
        zedGraph.Invalidate ();
    }
}

Вернуться к остальным примерам

Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.
5 stars

Рейтинг 5.0/5. Всего 6 голос(а, ов)



 01.04.2014 - 03:14

МолодеЦ!


Подписаться на комментарии
Автор:
Тема:
 Ваш комментарий
 
 
Введите код 323