How do I plot cylinder bar in matlab?

5 次查看(过去 30 天)
Dear all,
Is that possible to plot cylinder bar in matlab smilar to the picture below?
Let say my data is: x=[30,60,90]. I also would like to add x-axes and y-axes .
I appreciate it if you help me with example..
cy.jpg

回答(1 个)

darova
darova 2019-5-3
You can manually create whatever you want
clc,clear
radius = 10;
[X, Y, Z] = cylinder(radius,30);
[X0, Y0] = sphere(20);
X0 = X0 * radius;
Y0 = Y0 * radius;
Z0 = zeros(size(X0));
cla, hold on
x = [30 60 90];
y = [15 12 20];
for i = 1:length(x)
X1 = X + x(i);
Z1 = Z.*y(i);
surf(X1,Y,Z1, 'FaceColor', 'm') % cylinder wall
surf(X0+x(i),Y0,Z0, 'FaceColor', 'm') % bottom
surf(X0+x(i),Y0,Z0+y(i), 'FaceColor', 'm') % top
end
hold off
xlabel('X axis')
ylabel('Y axis')
zlabel('Z axis')
axis equal
  1 个评论
laith Farhan
laith Farhan 2019-5-4
thanks Darova for your reply, but it didnt work for my case. I want the cylinder bar similar to the picture

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by