0

手動で入力したシリーズやシリーズのデータ​​に依存しない動的なグラフを作成するという私の探求では、問題が発生しました。正しい量の系列と正しいデータを追加していますが、たまたま間違った系列またはx軸点にあります。いくつかのポイントが1ずれており、混乱しているところを特定したと思いますが、見えません。

        function chartCreate(point) {
        var temp;
        temp = $.parseJSON(point.d);
        $.each(temp, function (key, p) {
            var seriesObj;

            seriesObj = seriesExists(p.mcAnswer);
            if (seriesObj.status == 'f') {
                var name = p.mcAnswer.replace(/^\s+|\s+$/g, '')
                //var name = p.mcAnswer.replace(/^\s+|\s+$/g, '')
                chart1.addSeries({ name: name, data: [] }, false);
                chart1.series[seriesObj.count].addPoint(p.total, false);
            } else {
                chart1.series[seriesObj.count].addPoint(p.total, false);
            }
        });
    };

    //loops through all the series to see if the series exists.
    //if true returns index and true if not just returns false
    function seriesExists(name) {
        name = name.trim();
        var ct = 0;
        var returnObj = { count: ct, status: 'f' };
        var len = chart1.series.length;
        //            var len = 0;
        if (len > 0) {
            $.each(chart1.series, function (count, curSeries) {
                ct = count;
                var temp = curSeries.name;
                temp = temp.trim();
                if (temp == name) {
                    returnObj = { count: ct, status: 't' };
                    return (false);
                } else {
                    returnObj = { count: ct, status: 'f' };
                }
                //ct = count;
            });
        }
        return returnObj;
    };

seriesExists関数のそれぞれでエラーが発生すると思います。これに渡されるjsonの場合、ループ内の各オブジェクトを通過するときにポイントを追加するときに順番になるように、すべてが順番に作成されました。発生する奇妙なことは、追加されたすべてのポイントが間違った場所にあるわけではなく、そのうちの1つだけが間違ったシリーズにあるということです。 これは、エクスポートしようとすると表示されます 間違ったチャートの保存

間違ったグラフが実際に画面上でどのように見えるか 間違ったチャートがほんの少しずれています

正しいチャート 正しいチャート

4

1 に答える 1

0

申し訳ありませんが、私は別のプロジェクトに引き込まれました。各オブジェクトを調べて一時配列に格納することで、正しいグラフを作成できました。ajax 呼び出しからすべてのオブジェクトを調べた後、addSeries を使用すると、チャートが正しく作成されます。

于 2013-03-11T17:45:39.957 に答える