Первые шаги в ZedGraph - C#
Формулировка задачи:
Решил у себя на Студии 2012 запустить код-пример чтобы поэкспериментировать,но сразу пошла ошибка.
Добавил ZedGraph через проект-Добавить Ссылку-Обзор–ZedGraph
Добавил директиву using ZedGraph.
Но на ошибку ругается.
}
Имя типа или пространства имен "AxisChange" отсутствует в пространстве имен "ZedGraph" (пропущена ссылка на сборку?
Имя типа или пространства имен "Invalidate" отсутствует в пространстве имен "ZedGraph" (пропущена ссылка на сборку?)
public void drawgraph()
{
GraphPane panel = ZedGraph.GraphPane;------"ZedGraph.GraphPane" является "тип", который является недопустимым в заданном контексте
// Очистим список кривых на тот случай, если до этого сигналы уже были нарисованы
panel.CurveList.Clear();
// Создадим список точек
PointPairList list = new PointPairList();
// Интервал, где есть данные
double xmin = -50;
double xmax = 50;
double xmin_limit = -10;
double xmax_limit = 80;
double ymin_limit = -1.0;
double ymax_limit = 1.0;
// Заполняем список точек
for (double x = xmin; x <= xmax; x += 0.01)
{
list.Add(x, f(x));
}
LineItem myCurve = panel.AddCurve("Sinc", list, Color.Blue, SymbolType.None);
// !!!
// Устанавливаем интересующий нас интервал по оси X
panel.XAxis.Scale.Min = xmin_limit;
panel.XAxis.Scale.Max = xmax_limit;
// !!!
// Устанавливаем интересующий нас интервал по оси Y
panel.YAxis.Scale.Min = ymin_limit;
panel.YAxis.Scale.Max = ymax_limit;
// Вызываем метод AxisChange (), чтобы обновить данные об осях.
// В противном случае на рисунке будет показана только часть графика,
// которая умещается в интервалы по осям, установленные по умолчанию
ZedGraph.AxisChange();
// Обновляем график
ZedGraph.Invalidate();
}
private void button1_Click(object sender, EventArgs e)
{
drawgraph();
}
теперь на это ругается.
ZedGraph.AxisChange();
// Обновляем график
ZedGraph.Invalidate();
Проблема решена!
Решение задачи: «Первые шаги в ZedGraph»
textual
Листинг программы
public void drawimpuls(double U, double T)
{Процедура рисования графика прямоугольного импульса}
{
GraphPane panel = zedGraphControl1.GraphPane;
panel.CurveList.Clear();
panel.Title.Text = "Прямоугольный импульс";
panel.XAxis.MajorGrid.IsVisible = true;
panel.YAxis.MajorGrid.IsVisible = true;
panel.YAxis.MajorGrid.IsZeroLine = false;
panel.XAxis.Title.Text = "t";
panel.YAxis.Title.Text = "u(t)";
panel.XAxis.Cross = 0.0;
panel.YAxis.Cross = 0.0;
panel.XAxis.Scale.IsSkipFirstLabel = true;
panel.XAxis.Scale.IsSkipLastLabel = true;
panel.XAxis.Scale.IsSkipCrossLabel = true;
panel.YAxis.Scale.IsSkipFirstLabel = true;
panel.YAxis.Scale.IsSkipLastLabel = true;
panel.YAxis.Scale.IsSkipCrossLabel = true;
panel.XAxis.Title.IsVisible = false;
panel.YAxis.Title.IsVisible = false;
{ Объявление списка точек }
PointPairList list = new PointPairList();
double xmin = -1;
double xmax = 10;
{Заполнение списка точек}
for (double x = xmin; x <= xmax; x += 0.01)
{
{ Добавление точки в список }
list.Add(x, calcimpuls(U,T,x));
}
LineItem myCurve = panel.AddCurve("Sinc", list, Color.Blue, SymbolType.None);
zedGraphControl1.AxisChange();
zedGraphControl1.Invalidate();
}