5
Tôi muốn vẽ các điểm 3D trong Matlab
bằng các màu khác nhau tùy thuộc vào giá trị. Tôi đã có mã sau đây, nhưng điều này không làm việc vì plot3d
cần một vector.Vẽ các điểm 3D trong Matlab
x = vdhf_data.data(:,1);
y = vdhf_data.data(:,2);
z = vdhf_data.data(:,3);
data = vdhf_data.data(:,4);
grid on
hold all
for k=1:length(x)
if data(k) < 6
plot3d(x(k), y(k), z(k), 'ws--', 'MarkerEdgeColor', 'r', 'MarkerFaceColor', 'r')
else
plot3d(x(k), y(k), z(k), 'ws--', 'MarkerEdgeColor', 'g', 'MarkerFaceColor', 'g')
end
end
Làm cách nào để thực hiện điều đó trong Matlab?
Tôi tin rằng thay vì 'kích thước (x (x))' vector kích thước trong phân tán3 có thể là giá trị vô hướng cho cùng kích thước hoặc trống ('[]') cho kích thước mặc định. – yuk
Có thể có một vô hướng. Tôi chỉ muốn có hai nhãn hiệu. Có khả năng để thêm điều này trong một dòng thay vì một vòng lặp? – Razer
Bạn sẽ chỉ cần điều chỉnh bản đồ màu của mình. Vì vậy, đối với hai màu (đỏ và xanh dương), bạn sẽ làm một cái gì đó như thế này 'colormap ([những người (50,1) * [1 0 0]; những người (50,1) * [0 0 1]])' Điều này sẽ làm cho bộ phận màu ở giữa phạm vi dữ liệu. Nếu bạn muốn nó ở một số cụ thể, bạn phải mở rộng tỷ lệ (n-a, 1) (n + a, 1) cho phù hợp – zamazalotta