簡體   English   中英

使用 ChartJs 超出了最大堆棧調用大小

[英]Max stack call size exceeded using ChartJs

我正在嘗試通過 ChartJs 使用折線圖繪制很多點。 它在 600000000 值和 (6E8) 以下正確繪制圖形,但超過此值的任何內容都不會繪制圖形。 但我需要繪制至少 50E8 個值。 我一直在尋找選項中的設置,或者在 ChartJs 文檔中打勾部分,但根本找不到。 下面是我的代碼

    <div id="canvas-holder">
        <canvas id="myChart" width="800" height="300"></canvas>
    </div>
    <script>
        var options = {
        type: 'line',
        data: {
            labels: {{ labels | safe }},
            datasets: [{
                    label: 'Value',
                    data: {{ values | safe }},
                    backgroundColor: 'white',
                    borderWidth: 1,
                    order: 2
                },
                {
                    label: 'Peak value',
                    data: [{
                    x: {{ labels2[0] | safe }},
                    y: {{ values2[0] | safe }}
                    }, {
                    x: {{ labels2[1] | safe }},
                    y: {{ values2[1] | safe }}
                    }, {
                    x: {{ labels2[2] | safe }},
                    y: {{ values2[2] | safe }}
                    }],
                    backgroundColor: 'black',
                    borderWidth: 5,
                    pointRadius: 5,
                    showLine: false,
                    order: 1
                }
            ]
        },
        options: {
            responsive: true,
        scales: {
            xAxes: [{
                ticks: {
                    beginAtZero: true
                }
            }]
        }
    }
};

    var ctx = document.getElementById('myChart').getContext('2d');
    new Chart(ctx, options);

我發現沒有太多解決辦法。 我一次必須傳入少於 300k 的值。 為此,我只是做了一個簡單的

if (len(list) > 300000)
    del list[::8]

或您想要的任何值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM