Drawing line segments in a 3d plot

40 visualizzazioni (ultimi 30 giorni)
Harry
Harry il 12 Lug 2020
Risposto: jonas il 12 Lug 2020
Hi, given a matrix, such as
rand(6,5)
I want to create a 3d plot containing line segmentes, where each line segment is purple, begins at a blue point, with the x, y, z co ordinates taken from the entries in the 1st, 2nd and 5th columns of the matrix, and ends at a red point with the x, y, z co ordinates taken from the entries in the 3rd, 4th and 5th columns of the matrix.

Risposta accettata

jonas
jonas il 12 Lug 2020
Something like this?
A = rand(6,5);
startv = [A(:,1),A(:,2),A(:,5)];
endv = [A(:,3),A(:,4),A(:,5)];
figure;hold on
scatter3(startv(:,1),startv(:,2),startv(:,3),[],'b','filled');
scatter3(endv(:,1),endv(:,2),endv(:,3),[],'r','filled');
h = plot3([startv(:,1)';endv(:,1)'],...
[startv(:,2)';endv(:,2)'],...
[startv(:,3)';endv(:,3)'])
set(h,'color',[128,0,128]./255);
view(3)

Più risposte (0)

Categorie

Scopri di più su Graphics in Help Center e File Exchange

Tag

Prodotti


Release

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by