gpt4 book ai didi

MATLAB:将大数组拆分为较小的数组,并将它们绘制为同一系列的一部分

转载 作者:行者123 更新时间:2023-12-04 04:35:40 24 4
gpt4 key购买 nike

问题
使用大型数组作为输入( 6.7E6 元素 )运行散点图函数时内存不足。
方法
我在大小为 的单元格中有两组大数据(n x 1) .

xCell = cell(n,1);
yCell = cell(n,1);
单元格内的数据是多个可变大小的数组 ( VariableSize x 1 )。我将每个单元格中的所有数组连接成一个数组。
% Combine cells into one array
x = cat(1,xCell{:});
y = cat(1,yCell{:});
% Clear unnecessary variables
clear xCell yCell
我最终得到两个数组 x y 具有相同大小( 6.7E6 个元素 )准备作为散点图的输入。执行我的代码后,我最终遇到了内存错误。
输出
??? Out of memory. Type HELP MEMORY for your options.
我已经最大化了我的计算机可用的堆空间量,并且我没有在计算机上运行其他任何东西。
目标
我想一次只加载数据的一部分(子数组),同时创建散点图并保留较小的子数组都只是一个较大系列的一部分的事实。

最佳答案

您可以使用 cloudPlot 等工具和 plot(Big)来自 FEX。 云图 将有助于可视化二维数据集的分布。在查看常规 plot(x,y,'.') 的超大数据集时,它特别有用。只会用纯色填充图,因为测量点彼此重叠。 情节(大)截取进入绘图的数据并将其减少到最小的可能集合,该集合在给定屏幕上可用像素数的情况下看起来相同。然后在用户缩放或平移时更新数据。当用户必须绘制大量数据并进行可视化探索时,这非常有用。

查看更多 here关于如何可视化二维数据的分布。

关于MATLAB:将大数组拆分为较小的数组,并将它们绘制为同一系列的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19782136/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com