Páginas

miércoles, 18 de diciembre de 2013

Ploticus: herramienta para hacer gráficas

Ploticus: 

Herramienta para hacer gráficas 

Seguramente muchos conoceréis a gnu plot ( http://www.gnuplot.info/ ), como herramienta libre  para realizar gráficas de todo tipo. Pero buscando por internet y foros, encontré a Ploticus, que es más simple de usar, con bastantes tipo de gráficas y nos puede servir también.



Podéis ver en su galería de ejemplos, todo tipo de gráficos y sus códigos fuentes de como hacerlos:




Ejemplo de uso: Gráfica de Resultados De Alumnos
Yo me he hecho mi propia gráfica con datos a partir de un ejemplo (http://ploticus.sourceforge.net/gallery/students.htm 

Nota:
En azul pongo los datos que he modificado del ejemplo original.

Código fuente: (archivo examenes.txt,  se describe el tipo de gráfica y lleva incluido los datos)
#set COLORLIST = red,yellow,blue,green,orange,pink,black,white
// added scg 8/4/04.. allows spaces to be represented using underscores..
#proc settings
  encodenames: yes
#proc page
pagesize: 7 4
#if @DEVICE in gif,png
  scale: 1
#endif
#proc getdata
fieldnameheader: yes
#intrailer // get data from end of this file
#endproc   //necessary in order to do the following computation involving NRECORDS
// compute XMAX (number of records+1 for bar graphs)
#set XMAX = $arith(@NRECORDS+1)
// set up area
#proc areadef
title: Grafica de Resultados
rectangle: 1 1 6 3
xrange: 0 @XMAX
yrange: 0 100   // no way currently to do autorange on variable # of fields
xaxis.stubs: datafield=1
xaxis.label: Estudiantes
yaxis.stubs: inc 10
yaxis.label: Puntuacion
// initialize loop variables
#set I = 3
#set NCLUST = $arith(@NFIELDS-2)
// start loop
#loop
  // set vars for this iteration
  #set FNAME = $fieldname(@I)   // this function is new
  #set ICLUST = $arith(@I-2)
  #set COLOR = $nmember(@ICLUST,@COLORLIST)
  // do bars
  #proc bars
  lenfield: @I
  cluster: @ICLUST / @NCLUST
  color: @COLOR
#hideund
  legendlabel: @FNAME
#showund
  barwidth: 0.1
  // update I and see if time to stop..
  #set I = $arith(@I+1)
  #if @I > @NFIELDS
    #break
  #endif
#endloop
// slap on the legend
#proc legend
format: singleline
location: 1 0.5
sep: 0.5
// here's the data
#proc trailer
data:
id group Aprobados Suspensos Matricula IndeExam_d
Julio N 44 45 71 89
Eva N 56 44 54 36
Jorge B 46 63 28 87
Isa B 42 28 39 49
Manuel B 52 74 84 66

Para crear la imagen, en la terminal escribimos:

  • $ploticus -png examenes.txt


Y se crea un archivo de imagen tipo .png con el nombre: out.png



Saludos


Fuente: http://ploticus.sourceforge.net/doc/welcome.html