vector3d random sample
显示 更早的评论
Hi all,
I have a problem plotting some data. There are too many points and therefore I want to plot a random sample.
The class is vector3d and contains 13717 points. I would be interested in plotting around a 1000 points or just a certain percentage. However, I keep getting the following error:
'Error using reshape
Product of known dimensions, 3, not divisible into total number of elements, 13717.'
Hope anyone here can help me.
Cheers,
Rick
回答(2 个)
n = 13717 ; % totalpoints
m = 1000 ; % points to select
x = rand(n,1) ; y = rand(n,1) ; % random data for demo
idx = randperm(n,m) ; % select m points outof n randomly
plot(x(idx),y(idx),'*r') % plot the points selected
3 个评论
Rick Verberne
2020-6-18
KSSV
2020-6-18
Why it din't work? It selects m random points out of n. What did work for you?
Rick Verberne
2020-6-19
Ameer Hamza
2020-6-18
编辑:Ameer Hamza
2020-6-18
vector3d is not a MATLAB class. In case you have data points in the form of n*3 matrix. You can do something like this
M = rand(13717, 3); % for example
idx = randperm(size(M,1), 1000); % select 1000 points from 13717
M_small = M(idx, :); % 1000x3 matrix
3 个评论
Rick Verberne
2020-6-18
Ameer Hamza
2020-6-18
So do you have a custom class vector3d?
Rick Verberne
2020-6-19
类别
在 帮助中心 和 File Exchange 中查找有关 Student's t Distribution 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!