Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.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# 使用.Net';统计公式库_C#_.net_Normal Distribution - Fatal编程技术网

C# 使用.Net';统计公式库

C# 使用.Net';统计公式库,c#,.net,normal-distribution,C#,.net,Normal Distribution,C#namespace System.Windows.Forms.DataVisualization.Charting.StatisticFormula似乎有一些我需要的统计函数。命名空间记录在。我真的很想使用反向正态分布(双Z)函数。问题是构造函数是内部的,因此我无法以我知道的任何方式访问函数 是否有某种方法可以访问此命名空间中的静态函数,或者我必须找到其他解决方案?您可能可以使用反射,类似这样的方法应该可以: var statisticFormula = (StatisticFor

C#namespace System.Windows.Forms.DataVisualization.Charting.StatisticFormula似乎有一些我需要的统计函数。命名空间记录在。我真的很想使用反向正态分布(双Z)函数。问题是构造函数是内部的,因此我无法以我知道的任何方式访问函数


是否有某种方法可以访问此命名空间中的静态函数,或者我必须找到其他解决方案?

您可能可以使用反射,类似这样的方法应该可以:

var statisticFormula = 
    (StatisticFormula) typeof(StatisticFormula).GetConstructor(
        BindingFlags.NonPublic | BindingFlags.Instance,
        null, Type.EmptyTypes, null).Invoke(null);
但这可能是一个更好的方法:

var chart = new Chart();
var value = chart.DataManipulator.Statistics.InverseNormalDistribution(.15)

你能举一个例子说明你到目前为止在C代码方面所做的工作吗。。?我认为,一旦我们能够看到您正在使用的是什么,或者您是如何尝试实现我尝试过的方法,这将更有意义:var stat=new System.Windows.Forms.DataVisualization.Charting.StatisticFormula();控制台写入线(统计分布不均(0.5))//它会给我一个编译器错误。这正是我所需要的(第二部分)。谢谢。您可能想在图表中添加using,即using(var Chart=new Chart()){return Chart.DataM….;}。有趣的是,如此有用、可重用的代码隐藏在如此繁琐的命名空间和API中。反射不起作用,因为
StatisticFormula
似乎没有非公共构造函数。即使有,我也怀疑它会起作用,因为我用
StatisticFormula F=newdatamanufactor().Statistics失败,在第一次调用某个统计方法时出现空指针异常。