Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.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
如何使用Microsoft Visual Studio在C#中的同一x轴上显示具有不同数量数据点的多个系列?_C#_Visual Studio 2012_Charts_Linechart_Series - Fatal编程技术网

如何使用Microsoft Visual Studio在C#中的同一x轴上显示具有不同数量数据点的多个系列?

如何使用Microsoft Visual Studio在C#中的同一x轴上显示具有不同数量数据点的多个系列?,c#,visual-studio-2012,charts,linechart,series,C#,Visual Studio 2012,Charts,Linechart,Series,因为我有多个系列,有不同的数据点,我想在同一个轴上绘制,这些点彼此重叠。因此,作为我的x轴的日期不是按升序排列的,甚至可能根据所选的选择重复 我希望x轴按升序排列,如果需要,序列将被打断,只要这些点是根据a轴上的日期绘制的,并且不重复 数据点是从我的Microsoft Access数据库中绘制的,包含100多个数据,这意味着如果这是一个可行的解决方案,我无法在程序中硬编码它 我有什么办法可以纠正这个问题吗 谢谢 这就是我当前图表的样子 解决方案1: 您可以为每个数据点使用“符号”,并在这些符号之

因为我有多个系列,有不同的数据点,我想在同一个轴上绘制,这些点彼此重叠。因此,作为我的x轴的日期不是按升序排列的,甚至可能根据所选的选择重复

我希望x轴按升序排列,如果需要,序列将被打断,只要这些点是根据a轴上的日期绘制的,并且不重复

数据点是从我的Microsoft Access数据库中绘制的,包含100多个数据,这意味着如果这是一个可行的解决方案,我无法在程序中硬编码它

我有什么办法可以纠正这个问题吗

谢谢

这就是我当前图表的样子


解决方案1:

您可以为每个数据点使用“符号”,并在这些符号之间使用一条较细的线,以明确实际数据点的位置以及这些线仅连接现有数据点的位置。如果有许多数据点,这需要一些谨慎的“设计选择”。可能非常小的符号(2点)和非常细的线(1点)会创建一个可读的图表

解决方案2:

  • 定义/计算两个现有数据点之间的最小距离(X-Delta)
  • 每当序列包含大于此增量的间隙时,出于绘图目的启动新序列
这将在图表中产生“间隙”,只要两点的距离大于您的增量

解决方案3:

在这种情况下,一些图表包允许将Y值设置为NULL并绘制“间隙”。因此,只需添加更多Y=Null的数据点,即可产生所需的间隙。这适用于某些图表库,而其他图表库则会产生异常。阅读文档或(更快的)实验可能会有所帮助

注意:


对于解决方案2和3,有必要为图表目的创建特殊系列。不可能简单地“绑定”到数据库中的数据。

所有系列是否具有相同的轴?(例如,所有系列都将“日期”作为X轴?)。所有系列都必须以日期为x轴绘制。您使用的图表库是什么(请添加标记)我已使用Visual studio中提供的Microsoft图表控件创建了图表。(这就是你想要的吗?)我认为我不能使用解决方案1,因为我有太多的数据点,这会挤满我的图表区域。我怀疑它也会重新格式化x轴。对于解决方案2,我不熟悉这种方法。我该怎么做呢?最后,对于解决方案3,如果直接从数据库获取数据,如何设置null?是否可以使用空数据点?如果是,我如何执行它?