Изменить размер маркера на графике scatter3

Я создал точечную диаграмму с функцией scatter3 в MATLAB. Мне нужно изменить размер маркера на графике. Сейчас я использую базовый код, который выглядит следующим образом:

data=importdata('clean_data_1_trial.csv');
x=data(:,1);
y=data(:,2);
z=data(:,5);
scatter3(x,y,z,[],z,'filled');
xlabel('Easting');
ylabel('Northing');
zlabel('Height');
title('3d scatter plot of B1')

Как изменить размер маркера.


person shivi    schedule 19.08.2016    source источник
comment
Добро пожаловать — прочитайте, как спросить — stackoverflow.com/help/how-to-ask. Доказательство читать перед публикацией! у вас опечатка в заголовке. Также ищите, об этом уже спрашивали!   -  person micstr    schedule 19.08.2016


Ответы (1)


Согласно этой документации

scatter3(X,Y,Z,S) 

рисует маркеры указанных размеров (S) одним цветом.

И пример:

[x,y,z] = sphere(16);
X = [x(:)*.5 x(:)*.75 x(:)];
Y = [y(:)*.5 y(:)*.75 y(:)];
Z = [z(:)*.5 z(:)*.75 z(:)];
S = repmat([1 .75 .5]*10,prod(size(x)),1);
C = repmat([1 2 3],prod(size(x)),1);
scatter3(X(:),Y(:),Z(:),S(:),C(:),'filled'), view(-60,60)

Подводя итог, вам нужно использовать матрицу s вместо []

size = [1 1 1];
s = repmat(size , prod(size(x)),1);
person Arnas Ivanavičius    schedule 19.08.2016
comment
Вы можете принять мой ответ, если он решит вашу проблему. - person Arnas Ivanavičius; 19.08.2016