public void Initialize(double samplingFrequency, string title, XAxisScrollMode scrollMode = XAxisScrollMode.None) { SampleFrequency = samplingFrequency; ContainerChart.BeginUpdate(); ContainerChart.Title.Text = title; ContainerChart.ViewXY.SampleDataSeries[0].Clear(); ContainerChart.ViewXY.SampleDataSeries[0].SamplingFrequency = 1; ContainerChart.ViewXY.ZoomPanOptions.MouseWheelZooming = MouseWheelZooming.Off; ContainerChart.ViewXY.ZoomPanOptions.LeftMouseButtonAction = MouseButtonAction.None; ContainerChart.ViewXY.ZoomPanOptions.RightMouseButtonAction = MouseButtonAction.None; _xAxis.Minimum = -SampleFrequency / 2; _xAxis.Maximum = SampleFrequency / 2; _xAxis.ScrollMode = scrollMode; _xAxis.ScrollPosition = _xAxis.Minimum; _xAxis.Position = _xAxis.Minimum; _xAxis.Title.Text = string.Format("{0} s", SampleFrequency.ToString("0.000")); ContainerChart.ViewXY.SampleDataSeries[0].FirstSampleTimeStamp = _xAxis.Minimum; ContainerChart.ViewXY.DropOldSeriesData = true; var samples = new double[(int)SampleFrequency]; FeedData(samples); ContainerChart.EndUpdate(); }
/// <summary> /// 图表初始化 /// </summary> /// <param name="samplingFrequency">采样频率</param> /// <param name="title">示波器标题</param> /// <param name="scrollMode">示波器缩放模式</param> /// <param name="xAxisLen">x轴长度</param> public void Initialize(double samplingFrequency, string title, XAxisScrollMode scrollMode, double xAxisLen) { _samplingFrequency = samplingFrequency; _chart.BeginUpdate(); _chart.Title.Text = title; _chart.ViewXY.SampleDataSeries[0].Clear(); _chart.ViewXY.SampleDataSeries[0].SamplingFrequency = samplingFrequency; _chart.ViewXY.SampleDataSeries[0].FirstSampleTimeStamp = 0; _chart.ViewXY.ZoomPanOptions.MouseWheelZooming = MouseWheelZooming.Horizontal; _chart.ViewXY.ZoomPanOptions.LeftMouseButtonAction = MouseButtonAction.None; _chart.ViewXY.XAxes[0].ScrollMode = scrollMode; _chart.ViewXY.XAxes[0].ScrollPosition = 0; _chart.ViewXY.XAxes[0].SetRange(0, xAxisLen); _chart.ViewXY.XAxes[0].Title.Text = string.Format("{0} s", xAxisLen.ToString("0.000")); _chart.ViewXY.DropOldSeriesData = true; //_chart.ViewXY.LineSeriesCursors[0].Visible = false; _chart.EndUpdate(); }
/// <summary> /// 设置示波器缩放模式 /// </summary> /// <param name="scrollMode">示波器缩放模式</param> public void SetScrollMode(XAxisScrollMode scrollMode) { _chart.ViewXY.XAxes[0].ScrollMode = scrollMode; }