Después de mucho batallar ya hallamos la respuesta de este asunto que tantos usuarios de este sitio han tenido. Si tienes algún detalle que compartir no dejes de compartir tu información.
Solución:
Si entiendo lo que se requiere, entonces (algo sorprendentemente) draw plot [...] (P-x);
funciona, siempre que establezca el domain
y samples
key correctamente. Entonces opciones como smooth
puede ser usado.
documentclass[tikz,borde=5]standalone
begindocument
begintikzpicture[scale=0.2]
defR5
foreach i [evaluate=a=18*i; r=R+i;] in 0, 1,...,20
fill (a:r) coordinate (P-i) circle [radius=0.2]
node [anchor=a+180, font=tiny] $P_i$;
draw[blue] plot [domain=0:20, samples=21,smooth] (P-x);
endtikzpicture
enddocument
Alternativamente, las coordenadas se pueden almacenar en un macro (esto tiene la ventaja de que se podría usar cualquier formato de coordenadas):
documentclass[tikz,borde=5]standalone
begindocument
begintikzpicture[scale=0.2]
defR5
foreach i [evaluate=a=18*i; r=R+i;] in 0, 1,...,20
fill (a:r) coordinate (P-i) circle [radius=0.2]
node [anchor=a+180, font=tiny] $P_i$;
defcoords
foreach i in 0,...,20xdefcoordscoords(P-i)
draw[blue] plot [smooth] coordinates coords;
endtikzpicture
enddocument
Ambos métodos producen el mismo resultado:
Podrías definir tu lista como expandida macropor ejemplo usando:
defLL
foreach ii in 1,2,3,...,20
xdefLLLL (P-ii)
y luego funciona
documentclass[tikz,border=7pt]standalone
begindocument
begintikzpicture[scale=0.2]
defRR5
%calcul des coordonnées des points
%calculation of the coordinates of the points
foreach ii in 0, 1,2,3,...,20
pgfmathsetmacroaa360 * ii/20
pgfmathsetmacrorrRR + ii
coordinate(P-ii) at (aa:rr);
%dessin des points de la spirale/drawing spiral points
foreach ii in 1,2,3,...,20
node[fill=black,inner sep=0,minimum size=0.2cm,circle]at (P-ii);
%Création de la liste point/ Creating the point list
defLL
foreach ii in 1,2,3,...,20
xdefLLLL (P-ii)
%affichage de la liste / list view
nodeLL;
% La commande ci-dessous fonctionne.
% The command below works.
draw[blue] plot coordinates LL;
endtikzpicture
enddocument
Puedes usar otro foreach
bucle para dibujar la curva.
documentclass[11pt]standalone
usepackagetikz
begindocument
begintikzpicture[scale=0.2]
defRR5
%calcul des coordonnées des points
%calculation of the coordinates of the points
foreach ii in 0, 1,2,3,...,20
pgfmathsetmacroaa360 * ii/20
pgfmathsetmacrorrRR + ii
coordinate(P-ii) at (aa:rr);
%dessin de la spirale/drawing of the spiral
foreach ii in 1,2,3,...,20
node[fill=black,inner sep=0,minimum size=0.2cm,circle]at (P-ii);
%par contre, en recopiant les données affichées on peut tracer la spirale
% on the other hand, by copying the displayed data we can draw the spiral
foreach ii in 1,2,...,19
draw[blue] (P-ii) -- (P-thenumexprii+1relax);
endtikzpicture
enddocument
Resultado:
Te mostramos reseñas y valoraciones
Al final de todo puedes encontrar las notas de otros usuarios, tú asimismo puedes mostrar el tuyo si te apetece.