0

私はこのコードを持っています:

       var temp = allsuminterestarray.OrderBy(i => int.Parse(i)).GroupBy(i => i);
       int[] forvaluescount = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 
                                    11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 
                                    21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 
                                    31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
                                    41, 42, 43, 44, 45, 46, 47, 48, 49, 50};



        int j = 0;
        foreach (var val in temp)
        {
            Console.WriteLine(val.Key + " " + val.Count());

            while ((forvaluescount[j] < Convert.ToInt32(val.Key)) && (forvaluescount[j] != Convert.ToInt32(val.Key)))
            {
                probabilities.Series["Series1"].Points.AddXY(forvaluescount[j], 0/trials);
                j++;
            }

            j++;
            probabilities.Series["Series1"].Points.AddXY(val.Key, val.Count()/trials);


        }

注:tempペアの値があります。例: (11, 1)、(14, 1)、(18, 1)、(19, 3)、(20, 1)、(21, 3)、(22, 1)、(24, 3) 、(27, 1)、(29, 2)、(30, 1)、(31, 2) を C# のグラフの X および Y 値として使用します。

基本的にここで何が起こるかというと、 の値が 11 であるとしval.Keyます。コードは、X として 1 ~ 10、Y として 0 の CHART 値を割り当てるように機能する必要があります。次に、対応する Y 値とともに X として 11 を割り当てます。

の値の間に欠損値がないように、ループが続行されますtemp

連続した値を出力するため、コードに問題はないと思います。

ここでの問題は、X と Y を順番にプロットしても、次のようなグラフが得られることです。

ここに画像の説明を入力

私はこれに似た画像を期待していました (これは次の値でのみ生成されましたtemp:

ここに画像の説明を入力

ただし、(X,0) のプロットの欠落があってはなりません。

助けてください、ありがとう!

4

0 に答える 0