Azzera filtri
Azzera filtri

How can i plot a hexagon, a triangle, a pentagon, an octagon and a circle.

22 visualizzazioni (ultimi 30 giorni)
What are the changes i need to make to this code to get a triangle, a pentagon, an octagon and a circle
% close all the open figure windows
close all
% create array containing 361 equally spaced points btw 0 and 2*pi
degrees = linspace(0, 2*pi, 361);
% store in the array 'c' cosine of all the values in the array 'degrees'
c = cos(degrees);
% store in the array 's' sine of all the values in the array 'degrees'
s = sin(degrees);
% calculate appropriate step size for plotting a hexagon
step = 360/6;
%plot the polygon
plot(c(1:step:361), s(1:step:361))
%set equal aspect ratio for all the axis
axis equal

Risposta accettata

Walter Roberson
Walter Roberson il 25 Nov 2013
sides = input('har mycket sides?');
step = 360/sides;
  4 Commenti
John BG
John BG il 29 Mar 2016
the commands sind and cosd take degrees directly:
sides=6
deg=[0:1:361]
c=cosd(deg)
s=sind(deg)
step=360/sides
plot(c(1:step:361),s(1:step:361));axis equal

Accedi per commentare.

Più risposte (1)

Image Analyst
Image Analyst il 3 Gen 2022
@Shyam Agarwal, try nsidedpoly():
pgon1 = nsidedpoly(6);
pgon2 = nsidedpoly(6,'Center',[5 0],'SideLength',3);
plot([pgon1 pgon2])
axis equal

Categorie

Scopri di più su Polar Plots in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by