Autor Tema: Dibujando en LaTeX: Recomendación

0 Usuarios y 1 Visitante están viendo este tema.

15 Febrero, 2014, 12:32 am
Leído 5849 veces

poolnikov

  • Experto
  • Mensajes: 687
  • Karma: +0/-0
  • Sexo: Masculino
Hola de nuevo.
Quería pediros alguna recomendación para hacer dibujos en LaTeX.
¿Es recomendable programas externos? O mejor desde LaTeX con el paquete PSTriks.
Gracias. Un saludo.

15 Febrero, 2014, 12:50 am
Respuesta #1

argentinator

  • Consultar la FIRMAPEDIA
  • Administrador
  • Mensajes: 7,272
  • País: ar
  • Karma: +0/-0
  • Sexo: Masculino
  • Vean mis posts activos en mi página personal
    • Mis posts activos (click aquí)
Depende del dibujo.

Si son dibujos simples, yo usaría el Paint.
Si son dibujos geométricos, quizás convenga el Geogebra.
Si son gráficas de funciones u otras construcciones matemáticas complicadas, usaría un software especializado, como MatLab, Mathematica, o cualquier otro.

En todos los casos, la imagen conviene guardarla como archivo PNG.
En las propiedades del archivo figuran las dimensiones de la imagen (ancho por alto en píxels). Estas dimensiones hay que saberlas para inscrutar correctamente la imagen en Latex.

Y luego de eso, incrustaría directamente la imagen en Latex.

Para graficar esquemas interesantes, con nodos y cuestiones complicadas de ese estilo, puede que sea útil PSTricks o TikZ. Yo los usaría sólo si no hay alternativa y uno justo requiere las capacidades que allí se ofrecen.

Lo único malo de no usar PSTricks, es que con otro tipo de software se hace difícil incrustar símbolos matemáticos en el dibujo, con la misma fuente que usamos para el texto en nuestro documento LaTeX.
A veces basta abrir el archivo en Paint, e insertarle las variables y expresiones matemáticas usando las fuentes en estilo "cursiva" o la fuente "symbol" (para las letras griegas).
Si este parche no fuera suficientemente satisfactorio, habría que usar PStricks.

Saludos

15 Febrero, 2014, 10:56 am
Respuesta #2

poolnikov

  • Experto
  • Mensajes: 687
  • Karma: +0/-0
  • Sexo: Masculino
Hola.
Muchas gracias por la recomendación.
¿Qué me podeis decir decir de gnuplot?
Gracias. Un saludo.

15 Febrero, 2014, 12:21 pm
Respuesta #3

Julio_fmat

  • Héroe
  • Mensajes: 2,287
  • País: cl
  • Karma: +0/-0
  • Sexo: Masculino
    • Fmat
Hola poolnikov.

Dibujar con LaTeX sí se puede, pero es un poco complicado, debes manejar muchos comandos y saber ajustar las figuras. Una opción para reducir el trabajo es usar GeoGebra, este programa te entrega el código LaTeX de las figuras geométricas, sólo debes irte a propiedades, y ahí buscar la opción de exportar imagen, te aparecerán las opciones de código LaTeX PSTricks y también la de Tikz, luego simplemente copias ese código que te aparece y listo, tienes el código LaTeX de tu figura.

Saludos. :)

PD: En todo caso, usar PSTricks aquí en el foro no sé si se pueda, nunca lo he intentado.
"Haz de las Matemáticas tu pasión".

15 Febrero, 2014, 02:40 pm
Respuesta #4

poolnikov

  • Experto
  • Mensajes: 687
  • Karma: +0/-0
  • Sexo: Masculino
Hola.
Gracias, descargue ayer un tutorial de PStricks y lo estuve ojeando, y me parecio un poco complicado.
Lo de Geogebra es buena opción, investigaré sobre ello.
Saludos.

15 Febrero, 2014, 04:07 pm
Respuesta #5

teeteto

  • Lathi
  • Mensajes: 2,616
  • Karma: +0/-0
  • Sexo: Masculino
  • Dormirás por una eternidad ¡Despierta!
Debemos saber...sabremos (David Hilbert)

15 Febrero, 2014, 05:45 pm
Respuesta #6

poolnikov

  • Experto
  • Mensajes: 687
  • Karma: +0/-0
  • Sexo: Masculino
Hola.
No soy capaz de pasar el dibujo de geogebra al LaTeX, me da error.
He cargado el paquete y sigue igual. ¿Lo habré hecho bien?

16 Febrero, 2014, 02:12 am
Respuesta #7

Julio_fmat

  • Héroe
  • Mensajes: 2,287
  • País: cl
  • Karma: +0/-0
  • Sexo: Masculino
    • Fmat
Hola.
No soy capaz de pasar el dibujo de geogebra al LaTeX, me da error.
He cargado el paquete y sigue igual. ¿Lo habré hecho bien?

OK, lo que sucede es que Geogebra te entrega más códigos de los que tu figura necesita, y generalmente debes "borrar" los primeros de cabecera. Intenta por ejemplo dibujando una línea, ya sabes, las líneas las haces con \line, opcionalmente, viene la estructura de la línea, largo, ancho=width y alto=high, que puedes modificar a tu gusto.

Sobre los paquetes, debes tener:

\usepackage{pstricks}
\usepackage{pstricks-add}

Hay más paquetes para dibujar, pero al menos esos yo he ocupado. Por ejemplo, si tienes algo como esto:

\documentclass[10pt]{article}
\usepackage{pstricks-add}
\pagestyle{empty}
\begin{document}
\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}
\begin{pspicture*}(-4.3,-5.66)(16.02,6.3)
\psline[linewidth=1.6pt](3.56,3.16)(3.6,-2.56)
\psline[linewidth=1.6pt](3.6,-2.56)(7.96,-2.6)
\psline[linewidth=1.6pt](7.96,-2.6)(3.56,3.16)
\psline[linewidth=1.6pt](3.6,-2.56)(-0.78,-2.56)
\psline[linewidth=1.6pt](-0.78,-2.56)(3.56,3.16)
\psline[linewidth=1.6pt](-0.78,-2.56)(5.66,0.41)
\psline[linewidth=1.6pt](7.96,-2.6)(1.52,0.47)
\psline[linewidth=1.6pt](1.52,0.47)(3.57,1.46)
\psline[linewidth=1.6pt](3.57,1.46)(5.66,0.41)
\psdots[dotsize=1pt 0,dotstyle=*](3.56,3.16)
\rput[bl](3.48,3.36){$M$}
\psdots[dotsize=1pt 0,dotstyle=*](3.6,-2.56)
\rput[bl](3.56,-2.96){$P$}
\psdots[dotsize=1pt 0,dotstyle=*](7.96,-2.6)
\rput[bl](8.14,-2.76){$L$}
\psdots[dotsize=1pt 0,dotstyle=*](-0.78,-2.56)
\rput[bl](-1.1,-2.82){$K$}
\psdots[dotsize=1pt 0,dotstyle=*](5.66,0.41)
\rput[bl](5.86,0.44){$R$}
\psdots[dotsize=1pt 0,dotstyle=*](1.52,0.47)
\rput[bl](1.22,0.54){$S$}
\psdots[dotsize=1pt 0,dotstyle=*](3.57,1.46)
\rput[bl](3.28,1.64){$T$}
\psdots[dotsize=1pt 0,dotstyle=*](3.59,-0.5)
\rput[bl](3.26,-0.18){$V$}
\end{pspicture*}
\end{document}

Lo que deberías borrar es lo siguiente:

\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}

Al menos yo siempre borraba eso y después lo otro me sale bien. De hecho, esto funciona en el foro:

\( \begin{pspicture*}(-4.3,-5.66)(16.02,6.3)
\psline[linewidth=1.6pt](3.56,3.16)(3.6,-2.56)
\psline[linewidth=1.6pt](3.6,-2.56)(7.96,-2.6)
\psline[linewidth=1.6pt](7.96,-2.6)(3.56,3.16)
\psline[linewidth=1.6pt](3.6,-2.56)(-0.78,-2.56)
\psline[linewidth=1.6pt](-0.78,-2.56)(3.56,3.16)
\psline[linewidth=1.6pt](-0.78,-2.56)(5.66,0.41)
\psline[linewidth=1.6pt](7.96,-2.6)(1.52,0.47)
\psline[linewidth=1.6pt](1.52,0.47)(3.57,1.46)
\psline[linewidth=1.6pt](3.57,1.46)(5.66,0.41)
\psdots[dotsize=1pt 0,dotstyle=*](3.56,3.16)
\rput[bl](3.48,3.36){$M$}
\psdots[dotsize=1pt 0,dotstyle=*](3.6,-2.56)
\rput[bl](3.56,-2.96){$P$}
\psdots[dotsize=1pt 0,dotstyle=*](7.96,-2.6)
\rput[bl](8.14,-2.76){$L$}
\psdots[dotsize=1pt 0,dotstyle=*](-0.78,-2.56)
\rput[bl](-1.1,-2.82){$K$}
\psdots[dotsize=1pt 0,dotstyle=*](5.66,0.41)
\rput[bl](5.86,0.44){$R$}
\psdots[dotsize=1pt 0,dotstyle=*](1.52,0.47)
\rput[bl](1.22,0.54){$S$}
\psdots[dotsize=1pt 0,dotstyle=*](3.57,1.46)
\rput[bl](3.28,1.64){$T$}
\psdots[dotsize=1pt 0,dotstyle=*](3.59,-0.5)
\rput[bl](3.26,-0.18){$V$}
\end{pspicture*} \)


Saludos compañero. ;)

PD: No soy un experto en PSTricks, pero aprendí este truco que nos hace la vida más fácil, así que si alguien quiere aportar con más ideas de PSTricks o sobre cómo dibujar en LaTeX, bienvenido sea.
"Haz de las Matemáticas tu pasión".

16 Febrero, 2014, 02:17 am
Respuesta #8

argentinator

  • Consultar la FIRMAPEDIA
  • Administrador
  • Mensajes: 7,272
  • País: ar
  • Karma: +0/-0
  • Sexo: Masculino
  • Vean mis posts activos en mi página personal
    • Mis posts activos (click aquí)
Borré mi comentario porque no acababa de entender que Geogebra te retorna directamente el código en lenguaje de PStricks.

Sin embargo, lo pongo de nuevo como una opción más: se puede intentar guardar la imagen de Geogebra en un archivo de imagen PNG, e insertarla en Latex con \includegraphics.

16 Febrero, 2014, 03:53 pm
Respuesta #9

poolnikov

  • Experto
  • Mensajes: 687
  • Karma: +0/-0
  • Sexo: Masculino
Hola.
No soy capaz de pasar el dibujo de geogebra al LaTeX, me da error.
He cargado el paquete y sigue igual. ¿Lo habré hecho bien?

OK, lo que sucede es que Geogebra te entrega más códigos de los que tu figura necesita, y generalmente debes "borrar" los primeros de cabecera. Intenta por ejemplo dibujando una línea, ya sabes, las líneas las haces con \line, opcionalmente, viene la estructura de la línea, largo, ancho=width y alto=high, que puedes modificar a tu gusto.

Sobre los paquetes, debes tener:

\usepackage{pstricks}
\usepackage{pstricks-add}

Hay más paquetes para dibujar, pero al menos esos yo he ocupado. Por ejemplo, si tienes algo como esto:

\documentclass[10pt]{article}
\usepackage{pstricks-add}
\pagestyle{empty}
\begin{document}
\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}
\begin{pspicture*}(-4.3,-5.66)(16.02,6.3)
\psline[linewidth=1.6pt](3.56,3.16)(3.6,-2.56)
\psline[linewidth=1.6pt](3.6,-2.56)(7.96,-2.6)
\psline[linewidth=1.6pt](7.96,-2.6)(3.56,3.16)
\psline[linewidth=1.6pt](3.6,-2.56)(-0.78,-2.56)
\psline[linewidth=1.6pt](-0.78,-2.56)(3.56,3.16)
\psline[linewidth=1.6pt](-0.78,-2.56)(5.66,0.41)
\psline[linewidth=1.6pt](7.96,-2.6)(1.52,0.47)
\psline[linewidth=1.6pt](1.52,0.47)(3.57,1.46)
\psline[linewidth=1.6pt](3.57,1.46)(5.66,0.41)
\psdots[dotsize=1pt 0,dotstyle=*](3.56,3.16)
\rput[bl](3.48,3.36){$M$}
\psdots[dotsize=1pt 0,dotstyle=*](3.6,-2.56)
\rput[bl](3.56,-2.96){$P$}
\psdots[dotsize=1pt 0,dotstyle=*](7.96,-2.6)
\rput[bl](8.14,-2.76){$L$}
\psdots[dotsize=1pt 0,dotstyle=*](-0.78,-2.56)
\rput[bl](-1.1,-2.82){$K$}
\psdots[dotsize=1pt 0,dotstyle=*](5.66,0.41)
\rput[bl](5.86,0.44){$R$}
\psdots[dotsize=1pt 0,dotstyle=*](1.52,0.47)
\rput[bl](1.22,0.54){$S$}
\psdots[dotsize=1pt 0,dotstyle=*](3.57,1.46)
\rput[bl](3.28,1.64){$T$}
\psdots[dotsize=1pt 0,dotstyle=*](3.59,-0.5)
\rput[bl](3.26,-0.18){$V$}
\end{pspicture*}
\end{document}

Lo que deberías borrar es lo siguiente:

\psset{xunit=1.0cm,yunit=1.0cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}

Al menos yo siempre borraba eso y después lo otro me sale bien. De hecho, esto funciona en el foro:

\( \begin{pspicture*}(-4.3,-5.66)(16.02,6.3)
\psline[linewidth=1.6pt](3.56,3.16)(3.6,-2.56)
\psline[linewidth=1.6pt](3.6,-2.56)(7.96,-2.6)
\psline[linewidth=1.6pt](7.96,-2.6)(3.56,3.16)
\psline[linewidth=1.6pt](3.6,-2.56)(-0.78,-2.56)
\psline[linewidth=1.6pt](-0.78,-2.56)(3.56,3.16)
\psline[linewidth=1.6pt](-0.78,-2.56)(5.66,0.41)
\psline[linewidth=1.6pt](7.96,-2.6)(1.52,0.47)
\psline[linewidth=1.6pt](1.52,0.47)(3.57,1.46)
\psline[linewidth=1.6pt](3.57,1.46)(5.66,0.41)
\psdots[dotsize=1pt 0,dotstyle=*](3.56,3.16)
\rput[bl](3.48,3.36){$M$}
\psdots[dotsize=1pt 0,dotstyle=*](3.6,-2.56)
\rput[bl](3.56,-2.96){$P$}
\psdots[dotsize=1pt 0,dotstyle=*](7.96,-2.6)
\rput[bl](8.14,-2.76){$L$}
\psdots[dotsize=1pt 0,dotstyle=*](-0.78,-2.56)
\rput[bl](-1.1,-2.82){$K$}
\psdots[dotsize=1pt 0,dotstyle=*](5.66,0.41)
\rput[bl](5.86,0.44){$R$}
\psdots[dotsize=1pt 0,dotstyle=*](1.52,0.47)
\rput[bl](1.22,0.54){$S$}
\psdots[dotsize=1pt 0,dotstyle=*](3.57,1.46)
\rput[bl](3.28,1.64){$T$}
\psdots[dotsize=1pt 0,dotstyle=*](3.59,-0.5)
\rput[bl](3.26,-0.18){$V$}
\end{pspicture*} \)


Saludos compañero. ;)

PD: No soy un experto en PSTricks, pero aprendí este truco que nos hace la vida más fácil, así que si alguien quiere aportar con más ideas de PSTricks o sobre cómo dibujar en LaTeX, bienvenido sea.

No hay manera.
Me da error en la línea donde aparece el primer comando, es decir donde aparece el primer \psline.....
¿Tendré bien cargados los paquetes? Entro en Package Manager y pone que tanto PStricks como PStrick-add están cargados con fecha de ayer, que fue cuando lo hice.

YA ESTÁ SOLUCIONADO.

Gracias a argentineitor, que me dio la solución en otro post:
No te puedo ayudar mucho porque siempre evito usar paquetes en lo posible.
Me limito a los más básicos, justamente para no perder tiempo renegando con LaTeX.

Con respecto a PStricks, como el nombre lo dice, realiza "trucos en formato PS", vale decir, "PostScript".
Para que funcione, hay que compilar en varias etapas, así:

Compilar de .tex a .dvi.
Convertir .dvi a .ps.
Convertir .ps a .pdf.

El TexMaker tiene comandos bien visibles para realizar esos pasos,
pero el problema es que hay que hacerlos en todas las ocasiones que quieras compilar.
Sin embargo, podrías usar la "compilación rápida".
Hay una de las opciones de compilación rápida (ver menú de configuración) en que termine especificar todo ese camino de compilación:

Compilar latex a dvi+dvi2ps+ps2pdf+ ver pdf.

O sea que seguramente tus problemas con PSTricks tienen una solución sencilla y elegante en TexMaker.

En cuanto al otro paquete, no sé.
Ni siquiera sé para qué sirve.
Yo te preguntaría si realmente lo necesitás.
A veces es preferible ahorrarse dolores de cabeza.

Los paquetes de uso más estándar son: los de AMS, los de PSTricks, los de TikZ, inputenc, babel, color, los que requiera beamer, quizás el geometry, y ya vamos cerrando la lista antes que se cuele algún paquete problemático...



Ahora sí!!!!!

Mi problema estaba en que compilaba directamente en PDFLatex

16 Febrero, 2014, 03:54 pm
Respuesta #10

poolnikov

  • Experto
  • Mensajes: 687
  • Karma: +0/-0
  • Sexo: Masculino
Borré mi comentario porque no acababa de entender que Geogebra te retorna directamente el código en lenguaje de PStricks.

Sin embargo, lo pongo de nuevo como una opción más: se puede intentar guardar la imagen de Geogebra en un archivo de imagen PNG, e insertarla en Latex con \includegraphics.

Gracias argentinator, tenía en cuenta tu comentario sobre la imagen PNG, pero cuando descubrí que Geogebra te daba el código LaTeX intenté probar así.
Pero ya ves que no soy capaz.