Последние изменения - Поиск:
RSS блога RSS блога

Начало

Программки

Плагины

Софт-обзоры

Программирование

Фото

Разное

Блог

Контакты

Я в FriendFeed Я в ЖЖ Я в твиттере

Шпаргалка по ZedGraph. Как использовать всплывающие подсказки

В этом примере показано как включить отображение всплывающей подсказки при наведении курсора на кривую, а также как можно изменять текст этой всплывающей подсказки.

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

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

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

        // Включим показ всплывающих подсказок при наведении курсора на график
        zedGraph.IsShowPointValues = true;

        // Будем обрабатывать событие PointValueEvent, чтобы изменить формат представления координат
        zedGraph.PointValueEvent +=
            new ZedGraphControl.PointValueHandler (zedGraph_PointValueEvent);

        DrawGraph ();
    }


    /// <summary>
    /// Обработчик события PointValueEvent.
    /// Должен вернуть строку, которая будет показана во всплывающей подсказке
    /// </summary>
    /// <param name="sender">Отправитель сообщения</param>
    /// <param name="pane">Панель для рисования</param>
    /// <param name="curve">Кривая, около которой находится курсор</param>
    /// <param name="iPt">Номер точки в кривой</param>
    /// <returns>Нужно вернуть отображаемую строку</returns>
    string zedGraph_PointValueEvent (ZedGraphControl sender,
        GraphPane pane,
        CurveItem curve,
        int iPt)
    {
        // Получим точку, около которой находимся
        PointPair point = curve[iPt];

        // Сформируем строку
        string result = string.Format ("X: {0:F3}\nY: {1:F3}", point.X, point.Y);

        return result;
    }

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

        return Math.Sin (x) / x;
    }

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

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

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

        double xmin = -50;
        double xmax = 50;

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

        // Создадим кривую с названием "Sinc",
        // которая будет рисоваться голубым цветом (Color.Blue),
        // Опорные точки выделяться не будут (SymbolType.None)
        LineItem myCurve = pane.AddCurve ("Sinc", list, Color.Blue, SymbolType.None);

        // Вызываем метод AxisChange (), чтобы обновить данные об осях.
        // В противном случае на рисунке будет показана только часть графика,
        // которая умещается в интервалы по осям, установленные по умолчанию
        zedGraph.AxisChange ();

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

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

Пожалуйста, оцените материал

0 stars Пока еще нет оценок



Автор:
Тема:
 Ваш комментарий
 
 
Введите код 121
 
Править - История - Печать - Последние изменения - Поиск
Последняя редакция от 10.12.2009 21:56