1

科学的なバブル チャートを生成しようとしていますが、ダッシュボードとして表示されると想定されています。グラフはバブルを反映することを目的としており、これらのバブルは ajax 呼び出しを使用してサイズと位置が変化します。

私はそれを行うことができましたが、パフォーマンスの問題に直面しています。ajax は、バブル タイプの Series によってそれぞれ提示される平均 80 から 150 のアイテムを返します。

そのため、2つの問題に直面しています

1) リクエストごとにブラウザがフリーズします。各追加操作の間に JavaScript をスリープさせようとしましたが、問題は解決しませんでした。

2) 最初の ajax 呼び出しの後、他の呼び出しは既存の一連のファクトを変更する必要があります。既存のシリーズを取得して、変更が必要な場合にその値を変更するにはどうすればよいですか?

$(function () {

    function addPoint(chart){

        $.get("{{ main_site_url }}/dashboard/likelihood/ajax/",
            function(data) {
                $.each(data, function(k, dic) {
                    var newSeries = new Highcharts.Series();
                    newSeries.type = 'bubble';
                    newSeries.id = dic.id
                    newSeries.data = [[dic.id, dic.views, dic.likes] ];
                    setTimeout(function() {
                        chart.addSeries(newSeries);
                    }, 2000);

                });
            }, "jsonp"
        );
    }
    $(document).ready(function() {

        $('#container').highcharts({
            chart: {
                type: 'bubble',
                zoomType: 'xy',
                animation: Highcharts.svg, // don't animate in old IE
                marginRight: 10,
                events: {
                    load: function() {
                        // set up the updating of the chart each second
                        var chart = this;
                        setInterval(function() {
                            addPoint(chart)
                        }, 3000);
                    }
                }
            },
            title: {
                text: 'Likelihood bubbles'
            }

        });
    });

});
4

0 に答える 0