Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 图表压缩_C#_Graphics_Charts - Fatal编程技术网

C# 图表压缩

C# 图表压缩,c#,graphics,charts,C#,Graphics,Charts,我正在编写一个C#桌面应用程序,它需要一些值(Y值,X-(in)时间)的图形表示(XoY) 操作完成它的工作,将值相加;然而,随着时间的推移,图表有下降的趋势 “挤压”本身使口译变得更加困难 我想让图形生成更好的输出,尽管有点数 注释 我认为图形表示的一个很好的例子是由.生成的图形表示。 该图表是一个样条曲线 定时器滴答一声触发加点 根据您的需要,有几种选择。我的猜测是,您希望保留所有数据点,只需添加一个滚动条。要做到这一点,你可以写: ChartArea A1 = chart1.Chart

我正在编写一个C#桌面应用程序,它需要一些值(Y值,X-(in)时间)的图形表示(XoY)

操作完成它的工作,将值相加;然而,随着时间的推移,图表有下降的趋势 “挤压”本身使口译变得更加困难

我想让图形生成更好的输出,尽管有点数

注释

我认为图形表示的一个很好的例子是由.生成的图形表示。
  • 该图表是一个样条曲线
  • 定时器滴答一声触发加点

  • 根据您的需要,有几种选择。我的猜测是,您希望保留所有数据点,只需添加一个滚动条。要做到这一点,你可以写:

    ChartArea A1 = chart1.ChartAreas["yourChartAreaByNameOrNumber"];
    A1.AxisX.ScrollBar.Size = 12;
    // show either just the center scroll button..
    A2.AxisX.ScrollBar.ButtonStyle = ScrollBarButtonStyles.SmallScroll;
    // .. or include the left and right buttons:
    A1.AxisX.ScrollBar.ButtonStyle = 
        ScrollBarButtonStyles.All ^ ScrollBarButtonStyles.ResetZoom;
    // looks better inside, but ymmv
    A1.AxisX.ScrollBar.IsPositionedInside = true;
    A1.AxisX.ScrollBar.Enabled = true;
    A1.AxisX.ScaleView.Size = 100;  // number (!) of data points visible
    
    你可能想玩的大小和位置。请选择您希望随时可见的数据点数量

    如果您想让可视区域跟随新数据(如示波器中的数据),可以设置滚动位置:

    Series S1 = chart1.Series["yourSeriesByNameOrNumber"];
    A1.AxisX.ScaleView.Position = S1.Points.Count - A1.AxisX.ScaleView.Size;
    
    请注意,添加任何数据后,需要重新设置

    如果还想让用户调整缩放范围集

    A1.AxisX.CursorX.IsUserSelectionEnabled = true;
    

    可能的副本您解决问题了吗?是的,很久以前。当点数超过某个预定义值时,我最终从图表中删除了点数。
    A1.AxisX.CursorX.IsUserSelectionEnabled = true;