javascript - PapaParse Chunk加载所有数据

标签 javascript d3.js large-data papaparse

我很难弄清楚这一点。我正在使用 Papaparse 解析一个巨大的 CSV 文件以获取数据集并插入 d3 和交叉过滤。首先,我使用node.js只是为了运行ejs服务器(我没有使用任何嵌入式js)。当我运行我的应用程序时,它就像一个魅力。我在 chunk 函数中看到它的获取结果基于 10 MB 默认值,并且我得到了数据集。然后我需要将我的代码传输到 eclipse 并将其转换为 jsp 或 html 并运行我的 websphere 服务器而不是 Node.js。当我运行我的应用程序时,我注意到该 block 正在接收我的所有数据集,而不是每个数据集接收 10MB,这导致我的 IE11 浏览器崩溃。这是一个错误吗?我试图将 Papa.LocalChunkSize 声明为等量的 MB,但它仍然加载我的所有数据集。请我需要帮助......

这是我的代码,以防万一。

    var chunk1Finish = false;
var chunkMainData1Finish = false;
var finishLoadingMainData = false;

var mdata = [];

     Papa.parse("data2/week201751custinqfinal_v4.csv", {
     download: true,
     header: true,
     skipEmptyLines: true,
     complete: function() {
        console.log("complete!! the MAIN data length is: " + mdata.length);
        finishLoadingMainData = true;
        buildPage(finishLoadingMainData, finishLoadingTrendData);
     },
    chunk: function(results) {
        //mdata.push(results.data[0]);
        if(chunkMainData1Finish) {
            console.log("chunkMainData1Finish is true");
            Array.prototype.push.apply(mdata, results.data);
        } else {
            console.log("chunkMainData1Finish is false");
            mdata = results.data;
            chunkMainData1Finish = true;
        }
    },
    error: function(error) {
        console.log("error!!!! " + error);
    }
});

最佳答案

Papa.LocalChunkSize 也不适合我。我向 Papa.parse 函数添加了一个 chunkSize 参数(只需将其添加到代码中的 chunk: 之前)。

示例:chunk: 1024 * 1024 * 1, 是 1MB 分块。

关于javascript - PapaParse Chunk加载所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47290946/

相关文章:

javascript - 当图表准备好/渲染时如何隐藏 cytoscape 节点?

javascript - 错误 : <path> attribute d: Expected number, "M67,0L67,0LNaN,0LNaN,0L728"

javascript - 为什么 d3.select().style() 不适用于 <div> 元素?

php - INSERT IGNORE 或 INSERT WHERE NOT IN

python - 合并多个csv文件与python中不同列的错误与writerow

javascript - noUiSlider:调整舍入输入值

javascript - 如何组合 Promise

javascript - D3.js v7 - 如何使可滚动图表的 Y 轴标签始终显示在屏幕上

matlab - 使用 Globals 而不是在 Matlab 中传递大型数组

javascript - 当单个单击事件触发时,所有单击事件处理程序都会触发