Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.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# Microsoft图表控件-每当我使用财务公式时,都会显示红色大X(坏)_C#_Asp.net_Charts_Asp.net Charts - Fatal编程技术网

C# Microsoft图表控件-每当我使用财务公式时,都会显示红色大X(坏)

C# Microsoft图表控件-每当我使用财务公式时,都会显示红色大X(坏),c#,asp.net,charts,asp.net-charts,C#,Asp.net,Charts,Asp.net Charts,我在这里的另一篇文章中发现了微软的.Net图表控件,到目前为止我很喜欢它们。对于任何需要它的人,以下是链接: 我在运行时做任何事情,比如创建序列并将它们拍打到图表区域。我可以通过向烛台图表提供X值和4 Y值成功创建烛台图表,当我将其添加到图表中时,如下所示: // "Price" is the .Name property of this series chart1.Series.Add(priceseries); 它工作得很好。接下来,我仔细研究了这个可爱的金融公式控件附带的示例。示例说明

我在这里的另一篇文章中发现了微软的.Net图表控件,到目前为止我很喜欢它们。对于任何需要它的人,以下是链接:

我在运行时做任何事情,比如创建序列并将它们拍打到图表区域。我可以通过向烛台图表提供X值和4 Y值成功创建烛台图表,当我将其添加到图表中时,如下所示:

// "Price" is the .Name property of this series
chart1.Series.Add(priceseries);
它工作得很好。接下来,我仔细研究了这个可爱的金融公式控件附带的示例。示例说明使用移动平均公式(仅以此为例,我无法使其中任何一个公式起作用),代码如下:

chart1.DataManipulator.FinancialFormula(FinancialFormula.MovingAverage,"5","Input","Simple");
其中“5”是要使用的句点,所以可以是我想要的任何句点。“输入”似乎是数据源系列,“简单”是输出系列。为了使其与我的代码配合使用,我创建了一个按钮并执行了以下操作:

    private void button1_Click(object sender, EventArgs e)
    {
        chart1.DataManipulator.FinancialFormula(FinancialFormula.MovingAverage, "5", "Price", "SMA");     
    }
很简单,是吗?好的,只要我点击那个按钮,我的图表控件就会在图表上以任何方式、形状或形式显示一个大的、红色的、不愉快的X,而不是移动平均线系列(我称之为“SMA”)

除了上面的代码之外,我还尝试过预创建“SMA”系列,在调用financialformula后,我尝试过将“SMA”系列添加到图表中,结果都是大平均值红色X。再次查看示例代码,似乎生成额外数据系列所需的代码就只有一行,但是我被卡住了!红色的X没有任何调试信息,这没有任何帮助:(

有没有办法摆脱大X,让它显示新的数据系列

更新:
作为测试,我删除了关于将序列添加到图表1的位,然后在它之后添加了Chart1.DataManipulator位。正如预期的那样,包含所有初始数据的初始序列不会出现(因为我删除了将其添加到图表的部分),但当下一行代码执行公式应用程序时-没有大的红色X。没有显示数据,但也没有错误代码-所以我想这是一种改进?这让我相信,我应用公式的初始数据集存在某种问题,或者与c的视图/边界有关hart控件本身。如果我在这条轨道上找到更多信息,我会将其作为第二次更新发布。

红色大X是在运行/解释公式时遇到问题的控件,并放弃了重影。也许公式太复杂,图表控件无法处理它。也许,有一个更为更新的c版本解除了限制的颂歌。肯定会有一些关于这个的东西

这种情况在设计时也会发生,当设计表单时,控件被拖到表单上,在这里和那里设置了一些属性,为了得到一个大的红色X,当控件在设计时也出现错误行为时,这种情况很常见

希望这有帮助, 顺致敬意,
汤姆。

我发现了问题的根源:

priceseries.IsXValueIndexed = true;
我这样做最初是为了省略任何空白数据点(即股票价格场景中的周末)。当我将值更改为false时,突然公式的应用效果很好。缺点是周末日期有空白点,没有数据!但这是另一个我可以自己解决的问题

对于其他有此问题的人,请参阅此参考文章以了解更多信息:

关于首先分组数据的说明不是开玩笑的。不要忽略任何数据点!

我也遇到过这种情况

在使用FinancialFormula(特别是FinancialFormula.ExponentialMovingAverage)时,系列图表类型应设置为SerieChartType.Line

在我的代码中,它被设置为SerieChartType.FastLine,这是从System.Drawing.dll引发OverflowException