Диаграммы
Компонент ZedGraphControl предназначен для построения различных видов диаграмм. Для построения различного рода графиков в C# существует множество внешних библиотек и компонентов. В большинстве своем это закрытые и/или платные продукты/ Исключение составляет свободный компонент ZedGraph. Полную документацию по данному компоненту можно найти по адресу http://zedgraph.org. Компонент позволяет строить как простые линейные графики, так и прямоугольные и круговые. Компонент совместим с .NET 2.0 и корректно работает в MS Visual Studio 2005 и 2008. Внимание. Компонент ZedGraphControl не входит в установочный пакет Microsoft Visual C# 2008 Express Edition. Для работы с этим компонентом, его необходимо предварительно установить на компьютер.
Установка компонента по работе с диаграммами
Чтобы установить компонент ZedGraphControl на компьютер необходимо:
- Скопировать папку с библиотекой ZedGraph.dll на компьютер в папку Microsoft Visual C# 2008 Express Edition.
- Добавить новый компонент на Панель элементов. Для этого одним щелчком левой кнопкой мыши выделите вкладку на панели элементов, в которую необходимо добавить компонент ZedGraphControl.
- Выбрать в программном меню Сервис команду Выбрать элементы панели элементов.
- В открывшемся окне перейти на вкладку Компоненты .Net Framework. Если в списке компонентов отсутствует компонент ZedGraphControl, то нажать кнопку Обзор, найти файл ZedGraph.dll.
- Выбрать компонент из списка компонентов и нажать кнопку ОК.
Результат. Компонент
появится на панели элементов в выбранной вкладке. Если перенести компонент ZedGraphControl на форму, то на форме появится заготовка с диаграммой: 
- Подключить библиотеку в модуле:
using ZedGraph; Структура всех диаграмм одинаковая — главное окно, внутри которого располагается экземпляр класса ZedGraphControl. Имя экземпляра класса — zedGraph. В конструкторе окна вызывается метод DrawGraph(), внутри которого и происходит заполнение компонента данными. Структура: private void Draw()//СозданиеполотноGraphPane pane = new GraphPane()// Создание прямоугольной рабочей области;Rectangler=newRectangle();r.Width = zedGraphControl1.Width; r.Height = zedGraphControl1.Height;//Очисткаполотнаpane.CurveList.Clear();// Создание списка точек, по которым будет строится график (X,Y)PointPairList list = new PointPairList();for (i = 0; i < 5; i++)//Построениеграфика,например:LineItem myCurve = pane.AddCurve(«График«, list, Color.Blue, SymbolType.None);// Настройка параметров: ……………………………………………………………..// Построение осейpane.AxisChange();// Совмещаем полотно и рабоую областьpane.Rect=r;// Совмещаем полотно и компонентzedGraphControlzedGraphControl1.GraphPane=pane;>
Шпаргалка по ZedGraph
ZedGraph — это очень удобный компонент для рисования графиков под .NET Framework, но, к сожалению, документация к этому контролу довольно скудная. Поэтому здесь я решил сделать что-то вроде шпаргалки или, если угодно, HOWTO по компоненту ZedGraph.
То, что находится дальше на этой странице — это не справка, а просто небольшие примеры, показывающие как использовать какую-нибудь одну из возможностей контрола. Все основные пояснения по использованию той или иной возможности будут написаны в виде комментариев к коду.
Структура всех примеров одинаковая — главное окно, внутри которого располагается экземпляр класса ZedGraphControl. Имя экземпляра класса — zedGraph. В конструкторе окна вызывается метод DrawGraph(), внутри которого и происходит заполнение компонента данными. Поэтому в примерах ниже будут приводиться только функции DrawGraph() и дополнительные функции, которые будут зависеть от примера.
Все примеры объединены в одном solution для Visual Studio 2005 и написаны на языке C#, скачать их можно отсюда.
Эта шпаргалка со временем будет пополняться новыми примерами.
Zedgraph c как подключить
Регистрация: 12.02.2010
Сообщений: 787
Скажу даже больше, я почитал и придумал, что надо добавить dll как обычный файл в проект, а затем в его свойствах поставить, что его надо компилировать вместе с проектом. Но тогда получается другая ошибка
CS0116 Пространство имен не может напрямую включать в себя такие члены, как поля или методы. Bin_creator C:\Users\user\Documents\Visual Studio 2015\Projects\Bin_creator\Bin_creat or\ZedGraph.dll
Если поставить в Свойствах «Внедренный ресурс», то получается запустить проект без ошибок, но не получается использовать код типа
this.z1 = new ZedGraph.ZedGraphControl();
this.SuspendLayout(); // // zedGraphControl1 // this.z1.Location = new System.Drawing.Point(0, 0); this.z1.Name = "zedGraphControl1"; this.z1.Size = new System.Drawing.Size(680, 414); this.z1.TabIndex = 0; // // Form1 // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(680, 414); this.Controls.Add( this.z1 ); this.Name = "Form1"; this.Text = "Form1"; this.ResumeLayout(false); this.Load += new System.EventHandler( Form1_Load );
В чем суть?!
Последний раз редактировалось Krasi; 08.10.2015 в 16:40 .
Интеграция исходников ZedGraph в проект
Пытаюсь использовать данный компонент в качестве части проекта чтобы исключить внешние библиотеки. Подскажите как использовать сторонние решения как часть проекта. На данный момент я создал папку внутри проекта под названием zedgraph и добавил в неё все классы из аналогичной папки с исходным кодом ZedGraph удалив из неё все локали кроме английской и файл .csproj. На Панели инструментов -> Компоненты [Имя проекта] появился элемент ZedGraphControl . Но любая попытка добавить его в форму выдаёт ошибку:
Не удалось создать компонент ‘ZedGraphControl’. Сообщение об ошибке: «System.Resources.MissingManifestResourceException: Не удалось найти ресурсы, соответствующие указанной культуре. Проверьте правильность внедрения или связывания ‘ZedGraph.ZedGraph.ZedGraphLocale.resources» со сборкой «[имя проекта]» во время компиляции или убедитесь что все необходимые сопутствующие сборки полностью подписаны и могут быть загружены.
Что я забыл сделать? Исходный код библиотеки здесь.
Отслеживать
задан 29 дек 2017 в 1:46
1,259 10 10 серебряных знаков 24 24 бронзовых знака
Ну так вы поудаляли файлы с ресурсами для текущей культуры, чего теперь хотите?
29 дек 2017 в 5:29
@Андрей, какие именно нужно было оставить? Я удалил только лишние локали оставив только одну. Также был удалён ZedGraph.csproj.
29 дек 2017 в 21:55
не совсем понятно о чем идет речь, например вот это предложение «Подскажите как использовать сторонние решения как часть проекта.» ?
– user227049
29 дек 2017 в 23:38
@FoggyFinder, использовать исходный код библиотеки как часть проекта. Не имею привычек вешать хвосты к исполняемому коду в виде внешних библиотек/пакетов. Поэтому и спрашиваю «Как?» интегрировать.
