Построение графиков

Добрый день.

В этой будет описано как воспользоваться библиотекой для графиков. На данный момент это наиболее простой способ впихнуть в свою программу график. Вы можете воспользоваться моей библиотекой и имортировать ее в проект. Я покажу как ей пользоваться.

Сначала, создайте новый проект и когда вам понадобится график, то сделаейте следующие действия:

1) Добавляем новое расширение (рис. 1, рис. 2)

2)Делаем перестроение проекта (ри. 3)

4)Добавляем новый контрол (рис. 4, рис. 5)

5)Настраиваем форму (рис. 6)

Теперь настроим програмную часть формы:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Text;
using System.Windows.Forms;
using Chart2DLib; //Подключаем библиотеку
 
namespace Законы_распределения
{
    public partial class frmGraph : Form
    {
        private Распределения.SwitchOn sOn;
        private DataSeries ds; // для коллекции графиков
        public frmGraph(Распределения.SwitchOn sOn)
        {
            InitializeComponent();
            this.sOn = sOn;
            //Настойи
            chart2D1.Dock = DockStyle.Fill;
            chart2D1.C2ChartArea.ChartBackColor = Color.White;
            ds = new DataSeries();
            chart2D1.C2Legend.IsLegendVisible = true;
            //Запускаем процедуру
            AddData();
        }
        private void AddData()
        {
            //Все эти настроки можно сделать через визуальный редактор
            //Visual Studio. Необходимо только данные о точках
            // Програмно присваиваем свойства для графика
            chart2D1.C2XAxis.XLimMin = 0f;
            chart2D1.C2XAxis.XLimMax = (float)sOn._enVal._Ntb;
            chart2D1.C2YAxis.YLimMin = 0f;
            chart2D1.C2YAxis.YLimMax = sOn._ouVal._maxfFR;
            chart2D1.C2XAxis.XTick = 1.0f;
            chart2D1.C2YAxis.YTick = chart2D1.C2YAxis.YLimMax / (float)sOn._enVal._Ntb;
            chart2D1.C2Label.XLabel = "This is X axis";
            chart2D1.C2Label.YLabel = "This is Y axis";
            chart2D1.C2Title.Title = "Построение графиков";
            chart2D1.C2DataCollection.DataSeriesList.Clear();
            // Добавляем точки графиков первой линии
            ds = new DataSeries();
            ds.LineStyle.LineColor = Color.Red;
            ds.LineStyle.Thickness = 2f;
            ds.LineStyle.Pattern = DashStyle.Dash;
            ds.LineStyle.PlotMethod =
            LineStyle.PlotLinesMethodEnum.Lines;
            ds.SeriesName = "П";
            ds.SymbolStyle.SymbolType =
            SymbolStyle.SymbolTypeEnum.Diamond;
            ds.SymbolStyle.BorderColor = Color.Red;
            ds.SymbolStyle.FillColor = Color.Yellow;
            ds.SymbolStyle.BorderThickness = 1f;
            for (int i = 0; i < sOn._enVal._Ntb; i++)
            {
                ds.AddPoint(new PointF((float)i+1f, (float)sOn._ouVal._arTable[i, 4]));
            }
            chart2D1.C2DataCollection.Add(ds);
            // Добавляем точки графиков второй линии
            ds = new DataSeries();
            ds.LineStyle.LineColor = Color.Blue;
            ds.LineStyle.Thickness = 1f;
            ds.LineStyle.Pattern = DashStyle.Solid;
            ds.LineStyle.PlotMethod =
            LineStyle.PlotLinesMethodEnum.Splines;
            ds.SeriesName = "Т";
            ds.SymbolStyle.SymbolType =
            SymbolStyle.SymbolTypeEnum.Triangle;
            ds.SymbolStyle.BorderColor = Color.Blue;
            for (int i = 0; i < 7; i++)
            {
                ds.AddPoint(new PointF((float)i + 1f, (float)sOn._ouVal._arTable[i, 5]));
            }
            chart2D1.C2DataCollection.Add(ds);
        }
    }
}

И в конечном итоге вид графика будет имет следующий вид (рис. 7):

Также можно воспользоваться всеми свойствами контролла, их довольно много. Может, напишу какой нибудь мануал по этому поводу. Для начала можете просто поэкспериментировать со всеми свойствами: плохого ничего не сделаете.
Пока что данная библиотека содержит методы построения линейных графиков. В дальнейшем ,возможно, будет расширяться эта библиотека, но для этого нужен спрос : )
Пользуйтесь, вот на библиотеку.
Доброго дня

Attachments

  • zip Graph
    Размер файла: 15 КБ Кол-во скачиваний: 721