Genexus Tag Cloud Control v2

Marcos Canán | Genexus, Genexus User Controls, Tag Cloud | 06/08/2007

Nueva versión del Tag Cloud Control aquí.

Changelog:

- Render de diseño
- Se crean las variables y se asocia la variable de databinding con “Actions”.
- Se agregó una propiedad para elegir el tipo de distribución (lineal, logarítmica) para el tamaño de las fuentes.

Distribución del tamaño de las fuentes

Un tag cloud es una especie de histograma con la diferencia que permite representar información de manera mucho mas densa. Lo equivalente a una barra sería un tag y lo equivalente al tamaño de la barra es el tamaño de la fuente.

Hay veces que por la naturaleza de los datos y por la alta densidad de información si se hace una distribución lineal del tamaño de la fuente se pierde la capacidad de identificar a golpe de vista que tag es mas relevante que otro (se agrupan muchos tags en la misma categoría). Por ejemplo usando 8 diferentes tamaños de fuentes y con el siguiente juego de datos:

Juego de datos

Haciendo una distribución lineal del tamaño de las fuentes el resultado es el siguiente:

Ejemplo Distribución lineal

Sin embargo, si utilizamos una distribución logarítmica obtenemos:

Ejemplo Distribución logaritmica

Con la distribución logarítmica se pierde un poco el “cuánto” mas relevante es un tag pero para algunos casos es útil para representar mejor el “cuál” es mas relevante.

En esta versión se le agregó al control una propiedad para poder elegir el tipo de distribución.

Propiedad distribution

Genexus Tag Cloud Control

Marcos Canán | Genexus, Genexus User Controls, Tag Cloud | 31/07/2007

Experimentando con los nuevos user controls de Genexus Rocha me surgió la idea de hacer un control Tag Cloud. Una primera versión (beta o CTP1 ;-) ) está disponible para bajar acá.

¿Cómo lo uso?

Instalación

- Crear la carpeta TagCloud bajo la carpeta de User Controls. Ej.:

user-controls-carpeta

- Copiar el contenido del archivo TagCloud.zip a la carpeta creada.

Uso

- Arrastro el control a un web panel.
- Creo una variable del tipo TagCloud y otra del tipo TagCloudItem.

variables-tagcloud-control-genexus

- Asocio a la propiedad “Data” del control la variable de tipo TagCloud.

tagcloud properties

 

- Cargo los tags. Ej.:

carga tags tagcloud

Resultado

tagcloud.GIF

¿Qué arreglos tiene pendiente?

- Que no sea necesario ni crear las variables ni asociar la variable databinding, que esto se haga solo al insertar el control.
- Hacer que la cantidad de diferentes tamaños de tags sean una propiedad del control, actualmente son 10 y son fijos.
- Poder asociar una clase de un theme al control.
- Hacerle un render de diseño.
- Etc…

Gestionado con WordPress