Vamos con varios ejemplos de uso de la librería gráfica: Un histograma, un gráfico de tartas y una función sin(x).
En cualquiera de los ejemplos los pasos que hay que dar son los mismos:
Vamos a hacer un pequeño histograma usando el objeto gráfico Histograma. Para ver un poco más sus posibilidades, crearemos también una botonería de zoom.
La botonería de zoom está en la clase BotoneriaZoom. Básicamente es un panel que recibe en su constructor un EscalaGrafica que es sobre la que van a actuar los botones de zoom. Instancia un par de botones de zoom de chuidiang.graficos.botones pasándoles dicha EscalaGrafica.
El ejemplo será un Applet en el que se instancian e inicializan
una BotoneriaZoom, un Lienzo y un objeto
gráfico Histograma.
También le ponemos un CursorHilo configurado para
que pinte sólo la línea vertical. En la BotoneriaZoom
añadimos un VisorRaton que permita ver la coordenada
x del ratón sobre el gráfico. Puedes pasear con el ratón
sobre el gráfico y probar a hacer click con el botón izquierdo
y el derecho.
El resultado de ambos fuentes corriendo más la librería gráfica puedes verlo aquí debajo.
Pasa el ratón por encima del gráfico y haz click
con el botón izquierdo y con el derecho.
Otro ejemplo, un gráfico de Tarta. A este no le ponemos botonería de zoom porque no tiene mucho sentido. Aquí puedes verlo funcionando.
Otro ejemplo más, una función sin(x) con una botoneria de zoom.
La BotoneriaZoom es la misma que en el ejemplo del Histograma.
El objeto gráfico Seno pertenece a la librería y se ha hecho heredando de FuncionAbstracta.
También añadimos un ojbeto CursorZoom, que nos permitirá hacer zoom arrastrando con el botón izquierdo del ratón. Añadimos además una Mano, que nos permite mover el gráfico arrastrando con el botón derecho del ratón. Finalmente, en BotoneriaZoom añadimos dos VisorRaton, uno configurado para ver la coordenada x y otro para la y. Prueba a arrastrar el gráfico tanto con el botón izquierdo del ratón como con el derecho.
Aquí tienes funcionando el applet de ejemplo.
Y esto es todo. Tienes disponible lo siguiente: