el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
Pstricks y tikz
1. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Uso de los paquetes pstricks y tikz
En la elaboraci´on de diagramas de flujo con LATEX
Josel Mechato Durand
Universidad Nacional de Piura
Mi´ercoles 5 de abril del 2014
J. Mechato Gr´aficos con LATEX
2. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
1 El Paquete PSTricks
Rese˜na Hist´orica
Colocaci´on de librerias
Entorno de PSTricks
2 Personalizaci´on de una grilla
3 Objetos gr´aficos b´asicos
Puntos
L´ıneas y Pol´ıgonos
L´ıneas
Pol´ıgonos
4 Nodos y conectores de nodos
Nodos y conectores
Etiquetas para los conectores de nodos
5 Simulaci´on de gr´aficos 3D
J. Mechato Gr´aficos con LATEX
3. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Rese˜na Hist´orica
Colocaci´on de librerias
Entorno de PSTricks
Rese˜na Hist´orica
PSTricks es un paquete que esta incluido en LATEXcon base en las
librer´ıas macros de TEX- PostScript, fue creado por Timothy Van
Zandt de la Universidad de Princeton en 1993. Estas librer´ıas son
compatibles con AMS-TEX y AMS-LATEX. El paquete fue dise˜nado
espec´ıficamente para gr´aficos matem´aticos de alta calidad, utilizando
t´ecnicas de gr´aficos vectorizados, proporcionando as´ı una calidad que
otros paquetes no pueden alcanzar. Con PSTricks se pueden incluir
estilos de l´ıneas, objetos geom´etricos como rect´angulos, tri´angulos; ejes
coordenados, herramientas para gr´aficos de diagramas de flujo, grafos,
mallas, objetos 3D, colores y efectos de texto, entre otros.
J. Mechato Gr´aficos con LATEX
4. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Rese˜na Hist´orica
Colocaci´on de librerias
Entorno de PSTricks
Colocaci´on de librerias
Empezaremos por poner las librer´ıas en el pre´ambulo de nuestro
documento
usepackage{pstricks}
usepackage{pst-plot}
usepackage{pst-all}
J. Mechato Gr´aficos con LATEX
5. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Rese˜na Hist´orica
Colocaci´on de librerias
Entorno de PSTricks
Entorno de PSTricks
Para incluir una gr´afica con PSTricks en nuestro documento, debemos
invocar el entorno pspicture con la siguiente secuencia de instrucciones:
begin{pspicture}(x,y)(x’,y’)
rput(0,0){hola}
end{pspicture}
J. Mechato Gr´aficos con LATEX
6. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Rese˜na Hist´orica
Colocaci´on de librerias
Entorno de PSTricks
Los par´ametros x, y y x’, y’ son las esquinas opuestas de un rect´angulo
imaginario. Nuestra gr´afica se puede salir de dicho rect´angulo, pero
usando begin{pspicture∗}(x, y)(x′, y′) se recorta todo lo que sobre
salga del rect´angulo delimitado. El anterior c´odigo (cambiando a x, y,
x’, y’ por -2,-2,2 y 2 respectivamente) nos devolver´a el siguiente
resultado:
hola
J. Mechato Gr´aficos con LATEX
7. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Personalizaci´on de una grilla
El comando grilla traza una cuadr´ıcula punteada en intervalos de 1
mm y sub-dividida en unidades de 1 cm.
newpsobject{grilla}{psgrid}{subgriddiv=1,griddots=10,
gridlabels=6pt}
Esto lo ubicamos antes del inicio del documento:
begin{document}
J. Mechato Gr´aficos con LATEX
8. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Si digitamos el siguiente comando
despu´es del inicio del documento
LATEX.
begin{pspicture}
(6,6)grilla
end{pspicture}
Y luego copilamos
(F2 −→ F4 −→ F8 −→ F7)
obtendremos:
0 1 2 3 4 5 6
0
1
2
3
4
5
6
J. Mechato Gr´aficos con LATEX
9. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Puntos
L´ıneas y Pol´ıgonos
Puntos
PSTricks permite la inclusi´on de puntos con el siguiente comando:
Para un punto
psdots[opt](x1,y1)
Para varios puntos
psdots[opt](x1,y1)(x2,y2)...(xn,yn)
El siguiente ejemplo colocaremos 3 puntos con estilos diferentes,
modificando su tama˜no(dotsize), forma(dotstyle), escala(dotscale) y
angulo de rotaci´on(dotangle):
J. Mechato Gr´aficos con LATEX
10. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Puntos
L´ıneas y Pol´ıgonos
Puntos
begin{pspicture}
(3,3)grilla
psdots[dotsize=7pt](1,1)
psdots[dotsize=5pt,dotstyle=
square,dotangle=60](1,2)(2,2)
psdots[dotsize=5pt,dotstyle=
triangle,dotscale=1 2]
(1,3)(2,3)(3,3)
end{pspicture}
0 1 2 3
0
1
2
3
J. Mechato Gr´aficos con LATEX
11. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Puntos
L´ıneas y Pol´ıgonos
Lineas
Con los puntos y las rectas se pueden crear una gran variedad de
figuras y formas muy comunes en matem´aticas como: ejes coordenados,
diagramas lineales, ´arboles, etc. A continuaci´on presentamos su
configuraci´on b´asica.
psline[opt]{flechas}(x0,y0)(x1,y1)...(xn,yn)
Esta instrucci´on dibuja una linea a trav´es de las coordenadas
establecidas por los puntos (x0, y0)(x1, y1)...(xn, yn)
J. Mechato Gr´aficos con LATEX
12. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Puntos
L´ıneas y Pol´ıgonos
Lineas
begin{pspicture}
(-4,-1)(3,3)grilla
psline[linewidth=1.5pt,linecolor=
red]{->}(-4,-1)(3,3)
psline[linewidth=1.5pt,linecolor=
blue]{->}(3,3)(0,0)
psline[linewidth=1.5pt,linestyle=
dashed,linecolor=yellow]
{->}(-4,-1)(0,0)
end{pspicture}
-4 -3 -2 -1 0 1 2 3
-1
0
1
2
3
J. Mechato Gr´aficos con LATEX
13. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Puntos
L´ıneas y Pol´ıgonos
Lineas
begin{pspicture}
(0,0)(5,5)grilla
psline{->}(0,1)(5,1)
psline{->}(1,0)(1,5)
psline[linecolor=red,
linewidth=2pt]
{[-]}(2,1)(4.5,1)
psline[linecolor=red,
linewidth=2pt]
{(-)}(1,1.5)(1,4)
end{pspicture}
0 1 2 3 4 5
0
1
2
3
4
5
J. Mechato Gr´aficos con LATEX
14. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Puntos
L´ıneas y Pol´ıgonos
Poligonos
Este comando es muy similar a psline, y dibuja un pol´ıgono cerrado
que une el primer punto (x0, y0) con el ´ultimo (xn, yn).
pspolygon[opt](x0,y0)(x1,y1)(x2,y2)...(xn,yn)
J. Mechato Gr´aficos con LATEX
15. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Puntos
L´ıneas y Pol´ıgonos
-3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13
-3
-2
-1
0
1
2
3
psset{unit=0.7cm}
begin{pspicture}(-3,-3)(13,3)grilla
pspolygon[linewidth=1.5pt](-2,-2)(0,2)(2,0)
pspolygon[linewidth=1.5pt,linearc=0.3](3,-2)(3,2)
(7,2)(7,-2)
pspolygon[linewidth=1.5pt,linestyle=dashed,
dash=5pt 2pt](8,0)(9,2)(11,2)(12,0)(10,-2)
end{pspicture}
J. Mechato Gr´aficos con LATEX
16. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Comandos b´asicos:
pnode(x, y){nombre} coloca en (x, y) un nodo que no ocupa
espacio, y le asigna un nombre.
dotnode[opciones](x, y){nombre} coloca en (x, y) un nodo en
forma de punto y le asigna un nombre.
cnode[opciones](x, y)radio{nombre} coloca en (x, y) un nodo
circular y le asigna un nombre.
Nota
El nombre asignado a un nodo debe tener solamente letras y d´ıgitos y
comenzar con una letra.
J. Mechato Gr´aficos con LATEX
17. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Comandos b´asicos:
pnode(x, y){nombre} coloca en (x, y) un nodo que no ocupa
espacio, y le asigna un nombre.
dotnode[opciones](x, y){nombre} coloca en (x, y) un nodo en
forma de punto y le asigna un nombre.
cnode[opciones](x, y)radio{nombre} coloca en (x, y) un nodo
circular y le asigna un nombre.
Nota
El nombre asignado a un nodo debe tener solamente letras y d´ıgitos y
comenzar con una letra.
J. Mechato Gr´aficos con LATEX
18. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Comandos b´asicos:
pnode(x, y){nombre} coloca en (x, y) un nodo que no ocupa
espacio, y le asigna un nombre.
dotnode[opciones](x, y){nombre} coloca en (x, y) un nodo en
forma de punto y le asigna un nombre.
cnode[opciones](x, y)radio{nombre} coloca en (x, y) un nodo
circular y le asigna un nombre.
Nota
El nombre asignado a un nodo debe tener solamente letras y d´ıgitos y
comenzar con una letra.
J. Mechato Gr´aficos con LATEX
19. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
En los siguientes comandos no se indica el punto de ubicaci´on (x, y);
para colocar este tipo de nodos se usa el rput.
rnode{nombre}{texto} asigna un nombre al nodo con bordes
invisibles que contiene al texto.
circlenode[pociones]{nombre}{texto} crea un nodo circular que
contiene al texto, y le asigna un nombre.
J. Mechato Gr´aficos con LATEX
20. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
En los siguientes comandos no se indica el punto de ubicaci´on (x, y);
para colocar este tipo de nodos se usa el rput.
rnode{nombre}{texto} asigna un nombre al nodo con bordes
invisibles que contiene al texto.
circlenode[pociones]{nombre}{texto} crea un nodo circular que
contiene al texto, y le asigna un nombre.
J. Mechato Gr´aficos con LATEX
21. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Ejemplo
begin{pspicture}
(5,3)grilla
dotnode(1,1){A}
cnode(3,2){0.4cm}{B}
cnode(4,1){0.5cm}{C}
ncline{A}{B}
ncline{A}{C}
end{pspicture} 0 1 2 3 4 5
0
1
2
3
J. Mechato Gr´aficos con LATEX
22. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Comandos b´asicos:
ncput[opciones]{etiqueta}: coloca la etiqueta sobre la l´ınea
misma del conector.
cnode : Lo mismo que dotnode pero el nodo que genera es
circular.
ncline :Une nodos dos a dos.
J. Mechato Gr´aficos con LATEX
23. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Comandos b´asicos:
ncput[opciones]{etiqueta}: coloca la etiqueta sobre la l´ınea
misma del conector.
cnode : Lo mismo que dotnode pero el nodo que genera es
circular.
ncline :Une nodos dos a dos.
J. Mechato Gr´aficos con LATEX
24. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Comandos b´asicos:
ncput[opciones]{etiqueta}: coloca la etiqueta sobre la l´ınea
misma del conector.
cnode : Lo mismo que dotnode pero el nodo que genera es
circular.
ncline :Une nodos dos a dos.
J. Mechato Gr´aficos con LATEX
25. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Ejemplo
begin{pspicture}(5,2)grilla
rput(1,0.5){ovalnode{A}
{Ad´an}}
rput(4,1.5){circlenode{B}
{Eva}}
nccurve[angleB=180,
linecolor=red]{A}{B}
end{pspicture}
0 1 2 3 4 5
0
1
2
Ad´an
Eva
J. Mechato Gr´aficos con LATEX
26. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Ejemplo: Dise˜nando un diagrama de flujo
0 1 2 3 4 5 6 7 8 9 10 11
0
1
2
3
4
5
6
7
8
9
Inicio
Final
EntradaH
H < 0
H > 40
P = 7 ∗ H P = 7 ∗ 40 + 5 ∗ (H − 40)
Imprima P
No
No S´ı
S´ı
J. Mechato Gr´aficos con LATEX
27. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Mejorando el ejemplo anterior
0 1 2 3 4 5 6 7 8 9 10 11
0
1
2
3
4
5
6
7
8
9
Inicio
Final
EntradaH
H < 0
H > 40
P = 7 ∗ H P = 7 ∗ 40 + 5 ∗ (H − 40)
Imprima P
No
No S´ı
S´ı
J. Mechato Gr´aficos con LATEX
28. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Para simular una gr´afica 3D usando los comandos de pstricks no es
tan complicado, simplemente manipulamos las siguientes opciones
fillstyle = gradient, gradbegin = blue, gradend = cyan
en el interior de nuestra programaci´on.
J. Mechato Gr´aficos con LATEX
29. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Efecto tridimensional
-2
-1
0
1
2
3
4
5
6
7
8
9
10
J. Mechato Gr´aficos con LATEX
30. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
J. Mechato Gr´aficos con LATEX
31. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Efecto tridimensional
-4 -3 -2 -1 0 1 2 3 4
-4
-3
-2
-1
0
1
2
3
4
J. Mechato Gr´aficos con LATEX
32. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Efecto tridimensional
-4 -3 -2 -1 0 1 2 3 4
-2
-1
0
1
2
3
4
5
6
J. Mechato Gr´aficos con LATEX
33. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Efecto tridimensional
-4 -3 -2 -1 0 1 2 3 4
-4
-3
-2
-1
0
1
2
3
4
J. Mechato Gr´aficos con LATEX
34. El Paquete PSTricks
Personalizaci´on de una grilla
Objetos gr´aficos b´asicos
Nodos y conectores de nodos
Simulaci´on de gr´aficos 3D
Diagrama de flujo del M´etodo de la Bisecci´on
Inicio
f, a, b, e
f(a).f(b) < 0
x0 = a+b
2Fin
no existe raiz en [a,b]
f(a).f(x0) < 0
b = x0
|f(x0)| ≤ e
a = x0
x0
v
v
F
F
v
F
J. Mechato Gr´aficos con LATEX