5 votos

¿Cómo dibujan las computadoras gráficos de funciones?

¿Podría alguien darme una visión general del algoritmo que utilizan las computadoras para dibujar gráficos?

Supongo que es o bien trazando muchos, pero muchos puntos y simplemente conectándolos o haciendo un estudio general de la función con la derivada. Sin embargo, solo tomar una derivada no es suficiente para conocer el comportamiento exacto de la función en un intervalo, ya que tendrías que evaluar cada punto del intervalo en la derivada, lo que nos deja de nuevo con el primer método...

Entonces, ¿cómo se hace?

6voto

Halfgaar Puntos 2866

Existen muchas bibliotecas de trazado diferentes, y todas funcionan de manera diferente.

Pero en general, un gráfico requiere datos, generalmente en forma de datos del eje x y eje y.

Incluso si pasas una función simbólica, (por ejemplo, plot(x^2,x=0..10)), típicamente la computadora discretiza tu dominio, calcula un conjunto finito de vectores, y traza líneas rectas entre esos puntos. Así que (x1,y1) se conecta con (x2,y2); (x2,y2) se conecta con (x3,y3); etc.

A veces, la biblioteca de trazado es lo suficientemente inteligente como para conocer el tamaño de la ventana de visualización y la resolución del monitor, y elige puntos que están suficientemente cerca para que no puedas notar que son una serie de líneas rectas.

Sin embargo, algunas bibliotecas saben que nos gustan las cosas suaves. Así que hacen algún tipo de interpolación spline de los datos para hacerlos más suaves.

Las cosas se vuelven un poco más interesantes cuando hablamos de gráficos vectoriales escalables (SVG). En SVG, la función y/o los datos se pueden convertir en una función vectorial parametrizada. Luego, la biblioteca de trazado traza el vector mientras se desplaza a través de su parametrización, a menudo pintando píxeles directamente.

En los viejos tiempos, las computadoras solo podían mostrar texto en un formato de pantalla fijo. ¿Cómo plotearon las computadoras funciones? ¡Usando caracteres ASCII y colocando los símbolos -, |, \ y / en la ubicación adecuada! ¡Si buscas algunos documentos de ingeniería de los años 60 y 70, incluso podrías encontrar algunos de estos gráficos.

Al final, existen cientos de bibliotecas de trazado, y todas ellas tienen diferentes formas de representar los datos.

2voto

Andrew Dalke Puntos 7607

Sea cual sea el método utilizado para trazar una función, al final, cuando se va a dibujar el gráfico, se debe dibujar el gráfico con un número finito de puntos.

El método más sencillo es simplemente trazar muchos puntos de la función (requiere muchos puntos para que parezca una curva continua). Otro método es usar menos puntos pero conectarlos con líneas rectas; pero al final tienes que trazar algunos puntos finitos que están en los segmentos de línea pequeños (solo evalúas la función en menos puntos). Se pueden utilizar otros métodos para aproximar la función, como las curvas cúbicas, pero al final tienes que trazar puntos.

De hecho, en muchos lenguajes de programación (como Matlab, Octave, Python), solo tienes la opción de trazar puntos. Así que tienes que crear explícitamente matrices de puntos del gráfico y usar la función de trazado para dibujar todos esos puntos (y los puntos luego se conectan con líneas, lo que se hace evidente si utilizaste una muestra muy pequeña de puntos del gráfico).

0voto

MohanBabu Puntos 43

Con la potencia de las computadoras de hoy en día ... calcular MUCHOS puntos a lo largo del gráfico. Calcular y trazar cada punto - mil más o menos por pulgada. De esta manera uno termina con un gráfico muy suave.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X