close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 13 years ago

Closed 13 years ago

#1389 closed enhancement (fixed)

Implement a Pie Chart

Reported by: Pedro Gea Owned by: Jorge
Priority: high Milestone: TOLBase Revitalization
Component: Interface Version: head
Severity: critical Keywords:
Cc:

Description

Se solicita la incoporación de gráficos circulares o de tipo pastel:
http://en.wikipedia.org/wiki/Pie_chart

Change History (7)

comment:1 Changed 13 years ago by Jorge

Status: newaccepted

Este widget parece ser un buen candidato: http://tcllib.sourceforge.net/doc/pie.html

comment:2 Changed 13 years ago by Jorge

(In [4009]) refs #1389, se implementa el paquete TkPieChart, contiene el método Plot que crear los piecharts

comment:3 Changed 13 years ago by Pedro Gea

Quizá no sería mala idea diseñar un paquete algo más general que admita varios tipos de gráficos, algo como TkCharts. Así, la creación de un gráfico de tipo pastel podría ser algo como TkCharts::PlotPie(...) y no sería necesario introducir nuevos paquetes si surgieran nuevos tipos de gráficos.

El pastel (al menos en Windows7 y con una pantalla con resolución 1280x800 sale achatado (aplastado por los polos) y excesivamente alineado a la izquierda (se pierde un borde del círculo).

He visto que se puede elegir el tamaño del pastel, ¿se puede indicar el tamaño y la posición de la ventana?

comment:4 in reply to:  3 Changed 13 years ago by Jorge

Existe un paquete que tiene varias funcionalidades relacionados con charts, puede verse en, http://tcllib.sourceforge.net/doc/plotchart.html, implementar un paquete más general que admita varios tipos de gráficos requiere un poco más de tiempo de diseño, lo consideraremos.

En el siguiente ejemplo se ilustra como controlar la posición del gráfico y graficar más de uno en una misma ventana.

#Require TkPieChart;

Set Values = {
  [[ Real A = 1, Real B = 2, Real C = 2, Real D = 3 ]]
};

Text w = TkPieChart::Plot( Values,
                           [[
                             "-windowtitle", "Window Title Test01",
                             "-title", "Test 01",
                             "-size", 200,
                             "-x", 10,
                             "-y", 10
                             ]] );


Text TkPieChart::Plot( Values,
                       [[
                         "-widget", w,
                         "-title", "Test 01, duplicado",
                         "-size", 200,
                         "-x", 10 + 200 + 10,
                         "-y", 10,
                         "-aspercent", 1
                        ]] );

Replying to pgea:

Quizá no sería mala idea diseñar un paquete algo más general que admita varios tipos de gráficos, algo como TkCharts. Así, la creación de un gráfico de tipo pastel podría ser algo como TkCharts::PlotPie(...) y no sería necesario introducir nuevos paquetes si surgieran nuevos tipos de gráficos.

El pastel (al menos en Windows7 y con una pantalla con resolución 1280x800 sale achatado (aplastado por los polos) y excesivamente alineado a la izquierda (se pierde un borde del círculo).

He visto que se puede elegir el tamaño del pastel, ¿se puede indicar el tamaño y la posición de la ventana?

comment:5 Changed 13 years ago by Jorge

(In [4011]) refs #1389, ampliando el test

comment:6 Changed 13 years ago by Jorge

(In [4012]) refs #1389, hacemos los pasteles más redondos, hay que verificarlo en windows 7 con 1200x800

comment:7 Changed 13 years ago by Jorge

Resolution: fixed
Status: acceptedclosed
Note: See TracTickets for help on using tickets.