Добро пожаловать, у меня проблема с созданием стиля представления ZedGraph в Windows Forms. Единственная проблема заключается в том, что метки не отображаются в одном и том же месте, но всегда движутся по оси. На оси Y это значение меры, а на оси X будет время ЧЧ: мм: сс, это фактическое время из XDate и DateTime.Now. Можешь посмотреть и поправить меня. Я новичок в ZedGraph, поэтому я не знаю, как его использовать. Это график обновления
if (Data.Probes.Count() > 10)
{
plot.Invoke(new Action(() =>
{
plot.GraphPane.XAxis.Scale.Min = Data.Probes.ElementAt(0).X;
plot.GraphPane.XAxis.Scale.Max = Date.ScaleMax;
plot.AxisChange();
plot.AxisChange();
plot.Refresh();
}));
}
, и это инициализация графика
var pane = plot.GraphPane;
plot.GraphPane.YAxis.Title.FontSpec.Size = 15;
plot.GraphPane.XAxis.Title.FontSpec.Size = 15;
pane.CurveList.Clear();
pane.GraphObjList.Clear();
pane.XAxis.MinorGrid.IsVisible = true;
pane.YAxis.MinorGrid.IsVisible = true;
pane.XAxis.Scale.Min = new XDate(DateTime.Now);
pane.XAxis.Type = AxisType.Date;
pane.XAxis.Scale.Format = "HH:mm:ss";
pane.XAxis.Scale.MinorUnit = DateUnit.Second;
pane.XAxis.Scale.MajorUnit = DateUnit.Second;
pane.YAxis.Scale.MinorStep = 0.1;
pane.YAxis.Scale.MajorStep = 1.0;
pane.YAxis.Type = AxisType.Linear;
pane.YAxis.Scale.Format = "0.0";
pane.XAxis.Scale.IsSkipLastLabel = false;
pane.XAxis.Scale.IsSkipFirstLabel = false;
plot.GraphPane.IsFontsScaled = false;
LineItem pointsCurve = pane.AddCurve("", Data.Probes, Color.Red);
pointsCurve.Line.IsVisible = true;
pointsCurve.Line.Width = 2.0F;
pointsCurve.Symbol.Fill = new Fill(new Color[] { Color.Blue, Color.Green, Color.Red });
pointsCurve.Symbol.Fill.Type = FillType.Solid;
pointsCurve.Symbol.Type = SymbolType.None;
pointsCurve.Symbol.Border.IsVisible = true;
pointsCurve.Symbol.Border.IsVisible = true;
pane.AxisChange();
plot.Refresh();