Você está na página 1de 51

Captulo

2
Visualizao de Informaes Uma Abordagem
Prtica
Hugo A. D. do Nascimento e Cristiane B. R. Ferreira1

Abstract
Information Visualization is an emerging scientific area that studies ways of presenting
data visually, so that information about the data can be better understood or even discovered. This course discusses several aspects regarding the visual presentation of data
and introduces well known and effective techniques for information visualization. The techniques presented here have applications in many scientific fields. In Computer Science,
particularly, they gain special attention for data mining and software engineering (for
the development of CAD and CASE software). The present paper differs from other materials because it not only gives conceptual details of the Information Visualization area,
but also discusses algorithms and proposes guidelines for implementing new visualization
techniques.
Resumo
Visualizao de Informaes uma rea emergente da Cincia que estuda formas de
apresentar dados visualmente de tal modo que relaes entre os mesmos sejam melhor
compreendidas ou novas informaes possam ser descobertas. O presente curso discute
vrios aspectos relacionados com a apresentao visual de dados e introduz tcnicas efetivas e bem conhecidas para visualizao de informaes. As tcnicas estudadas aqui
tm aplicaes prticas em vrios campos da Cincia. Em Cincia da Computao,
particularmente, elas ganham ateno especial na minerao de dados e na engenharia
de software (para o desenvolvimento de aplicaes CAD e CASE). Este documento no
somente apresenta detalhes conceituais da rea de Visualizao de Informao, mas tambm discute algoritmos e prope linhas gerais para a implementao de novas tcnicas
de visualizao, o que o difere de outros artigos similares.
1

Universidade Federal de Gois, Instituto de Informtica, Bloco do IMF I - Sala 239, Campus II,
Caixa Postal 131, CEP 74001-970, Goinia, GO. Fone: (62) 521-1181, Fax: (62) 521-1182. E-mail:
{hadn,cristiane}@inf.ufg.br. Este trabalho foi financiado pela Fundao de Apoio Pesquisa (FUNAPE) e
pela Universidade Federal de Gois.
XXIV JAI

1262

2.1

Introduo Visualizao de Informaes

A rea de Visualizao de Informaes um campo emergente de pesquisa que se preocupa com a construo de representaes visuais de dados abstratos de forma a facilitar o
seu entendimento e/ou ajudar na descoberta de novas informaes contidas nos mesmos.
Antes de discutirmos as tcnicas de Visualizao de Informaes propriamente
ditas, precisamos entender o que vem a ser o processo de visualizao. O Dicionrio
Aurlio [de Holanda Ferreira, 2004] nos ajuda nesse sentido trazendo algumas definies
esclarecedoras sobre o verbo visualizar e o substantivo visualizao:
Visualizar 1 Tornar visvel, mediante manobra ou procedimento. 2 Formar ou
conceber uma imagem visual mental de (algo que no se tem ante os olhos no
momento).;
Visualizao 1 Ato ou efeito de visualizar. 2 Transformao de conceitos abstratos em imagens real ou mentalmente visveis. 3 Processo de visualizar..
Com base nessas definies, podemos concluir que o processo de visualizao
est relacionado com a transformao de algo abstrato em imagens (mentais ou reais) que
possam ser visualizadas pelos seres humanos. O objetivo final auxiliar no entendimento
de determinado assunto, o qual, sem uma visualizao, exigiria maior esforo para ser
compreendido.
Nesse contexto, a rea de Visualizao de Informaes se apresenta como um
campo de estudo de grande utilidade, uma vez que agrega tcnicas que facilitam o entendimento de informaes a partir de representaes visuais de dados.
2.1.1

Vantagens de uma visualizao

Mas por que estamos dando nfase aqui na capacidade visual humana? Por que no falamos tambm de audio de dados ou de dados tteis? Em verdade, essas outras
formas de percepo de dados podem ser utilizadas e so discutidas suscitamente na ltima seo do trabalho. Destacamos, contudo, o aspecto visual neste documento, devido
a uma srie de vantagens naturalmente apresentadas pela capacidade visual humana.
Em primeiro lugar, uma grande quantidade de dados pode ser condensada em
uma simples visualizao. O ditado popular uma imagem vale mais do que mil palavras resume bem essa idia. A foto tirada por Nick Ut2 em 1972 que mostra uma menina
vietnamita de 9 anos correndo nua juntamente com outras pessoas e que ganhou o prmio
Pulitzer um exemplo tpico do poder expressivo das imagens. No preciso muitas palavras para entender o que a foto transmite e sabe-se hoje que ela teve um grande impacto
nas decises tomadas pelos Estados Unidos sobre a sua participao na guerra do Vietn.
Uma outra razo para explorarmos o processo de visualizao que ele envolve
o sentido humano que possui maior capacidade de captao de informaes por unidade
de tempo. O sentido da viso rpido e paralelo, sendo possvel, inclusive, prestar ateno em um objeto de interesse especial, sem perder de vista (obviamente, com menos
detalhes) o que est acontecendo ao redor.
2

A foto pode ser vista em http://www.igutenberg.org/jj825.html

XXIV JAI

1263

Alm disso, o sistema visual humano treinado para reconhecer padres. Podemos verificar essa capacidade atravs da Figura 2.1. Tente encontrar, por exemplo,
a estrela presente na imagem. Note que podemos localiz-la rapidamente no meio dos
quadrados. Se a estrela estivesse pintada com uma cor mais escura do que a dos demais
smbolos, ento o processo de reconhecimento seria ainda mais fcil.

Figura 2.1: Reconhecendo padres. Onde est a estrela?

Essas caractersticas do sistema visual nos permitem identificar e lidar com situaes complexas do nosso dia-a-dia que envolvem processamento visual.
Finalmente, as visualizaes por si s trazem benefcios, uma vez que podem
funcionar como uma extenso da memria humana e como um auxlio para o processo
cognitivo. Por exemplo, fazemos anotaes em uma agenda ou em um calendrio para
nos lembrarmos de assuntos a serem discutidos ou de eventos que ocorreram ou que iro
ocorrer. Tambm desenhamos diagramas e organizamos informaes espacialmente em
uma folha de papel quando estamos estudando um problema que envolve diversas partes. As imagens nos ajudam a entender o problema e/ou a encontrar uma soluo para o
mesmo. Elas, inclusive, facilitam a memorizao do objeto em estudo.
2.1.2

Um exemplo de visualizao

As vantagens de uma visualizao, conforme mencionado acima, podem ser vistas na


aplicao a seguir.
A Figura 2.2 mostra uma tabela real de gastos mensais de um residente da cidade
de Goinia-GO com despesas domsticas durante o pedodo compreendido entre agosto
de 1997 a janeiro de 1999. Podemos levantar vrias questes interessantes sobre os dados
da tabela, tais como: qual a maior despesa durante o referido perodo?, qual a
segunda maior despesa?, qual despesa oscilou constantemente com o tempo?, qual
despesa apresentou uma tendncia de reduo?.
Com base apenas na Figura 2.2, as duas primeiras perguntas podem ser respondidas sem grandes dificuldades. Contudo, as duas ltimas questes exigem uma anlise
mais demorada dos dados.
No entanto, se contrurmos uma visualizao baseada em um grfico de pizza para
essa tabela, como ilustrado na Figura 2.3, ento no apenas as duas primeiras perguntas
podem ser facilmente respondidas, mas tambm vrias outras questes relacionadas com
a proporo que cada despesa representa no gasto total do perodo.
XXIV JAI

1264

Condomnio
AGO
SET
OUT
NOV
DEZ
JAN
FEV
MAR
ABR
MAI
JUN
JUL
AGO
SET
OUT
NOV
DEZ
JAN

179,61
183,81
201,21
219,73
238,10
168,90
160,10
148,00
170,35
152,55
157,70
162,25
171,25
155,85
148,90
150,35
132,20
148,32

Luz
14,58
23,50
30,24
35,94
27,30
24,19
15,89
21,60
23,84
27,13
24,19
26,09
21,25
29,55
28,68
15,38
49,77
26,44

Conta
Telefone
51,40
38,35
149,00
143,95
164,10
126,68
25,49
148,88
174,76
132,51
56,90
254,52
185,74
114,42
171,74
98,16
183,39
114,57

Aluguel
Aluguel
Telefone
Apartamento
40,00
267,08
40,00
267,08
40,00
267,08
40,00
232,08
40,00
232,08
40,00
217,08
40,00
225,00
40,00
243,55
40,00
267,08
40,00
267,08
40,00
319,00
40,00
267,08
40,00
267,08
40,00
267,08
40,00
265,00
40,00
265,00
40,00
267,08
40,00
267,08

Faxina
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
52,40
82,40
52,40

Multicanal

59,90
59,90
59,90
57,90
59,90
59,90

Total
605,07
605,14
739,93
724,10
753,98
629,25
518,88
654,43
728,43
671,67
650,19
802,34
797,62
719,20
766,62
679,19
814,74
708,71

Figura 2.2: Tabela de despesas.

Faxina
8%

Multicanal
3%
Condomnio
24%

Luz
4%

Aluguel Apart.
36%

Conta Telefone
19%
Aluguel Telefone
6%

Figura 2.3: Visualizao das despesas atravs de um grfico de pizza.

Indo mais alm na anlise das despesas, podemos visualizar os mesmos dados
atravs de um grfico de linhas, como representado na Figura 2.4. Agora as respostas
para as duas ltimas questes ficam evidentes: a conta telefnica foi a despesa que mais
oscilou durante o perodo e o condomno foi o gasto que apresentou uma tendncia de
reduo.
O mais interessante nessa anlise que, olhando a Figura 2.4 alguns anos depois,
o residente de Goinia percebeu que houve trs momentos em que as despesas com conta
telefnica foram prximas a zero. Vendo os meses dessa ocorrncia, foi possvel recordar
que isso se deu nos perodos de frias escolares, quando o mesmo estava viajando para
outra cidade. Ele tambm se lembrou que a reduo no ms de fevereiro foi mais acentuada, uma vez que nesse perodo teve frias de trinta dias, enquanto nos demais as frias
foram de apenas quinze dias.
XXIV JAI

1265

350,00

300,00

Valor (R$)

250,00
Condomnio
Luz
Conta Telefone
Aluguel Telefone
Aluguel Apart.
Faxina
Multicanal

200,00

150,00

100,00

50,00

0,00
AGO SET OUT NOV DEZ JAN FEV MAR ABR MAI JUN JUL AGO SET OUT NOV DEZ JAN
Meses

Figura 2.4: Visualizao das despesas atravs de um grfico de linhas.

A constatao de padres ou de caractersticas visuais presentes em imagens contribue de forma muito mais significativa para o processo de compreenso do que a simples
observao dos dados em sua forma bruta. A construo de uma visualizao que possibilite essa observao pode ser conseguida organizando os dados segundo algum critrio
e apresentando-os de modo visual, como demonstrado nas figuras anteriores. Em geral,
visualizaes acabam possibilitando a recuperao de informaes relevantes e a construo de novos conhecimentos.
2.1.3

Aplicaes

Visualizaes de informaes tm sido desenvolvidas para uma grande variedade de outras aplicaes prticas, tais como:
monitoramento de bolsas de valores [Dwyer and Eades, 2002], consulta a bases de dados de filmes
[Ahlberg and Shneiderman, 1994], e desenho de organogramas de empresas e de
rvores genealgicas [Di Battista et al., 1999].
Particularmente na rea da Computao, a visualizao de informaes tem aplicaes especias na minerao de dados e na engenharia de software. Visualizaes de
software, por exemplo, auxiliam o programador a analisar e a entender a estrutura e o
funcionamento de um programa, em um nvel maior de abstrao do que quando comparada a uma simples leitura do cdigo fonte.
As tcnicas de visualizao de informaes tambm podem ser utilizadas para
filtrar, analisar e gerenciar grandes quantidades de dados, como as informaes que so
geradas e disponibilizadas diariamente na Internet.
2.1.4

Objetivos

O presente documento tem por objetivo apresentar uma viso global da rea de Visualizao de Informaes atravs do levantamento de diferentes aspectos relacionados com
a apresentao visual de dados, enfatizando sua importncia no processo de aquisio de
XXIV JAI

1266

conhecimento em vrias reas da Cincia. Ele tambm discute tcnicas e algoritmos para
construir representaes visuais efetivas, que auxiliem na compreenso de informaes.
Um outro objetivo do trabalho discutir mecanismos de interao que possibilitem
manipular representaes visuais de dados, bem como indicar linhas gerais para a criao
e a implementao de novas tcnicas de visualizao de informaes.
2.1.5

Organizao do documento

O restante deste documento est organizado como segue: a Seo 2.2 apresenta alguns
conceitos gerais sobre Visualizao de Informaes e sobre temas correlatos; a Seo 2.3
discute alguns critrios para ajudar na construo de visualizaes efetivas; a Seo 2.4
faz um apanhado histrico da evoluo das tcnicas de Visualizao de Informaes e
comenta algumas das tcnicas modernas mais utilizadas; a Seo 2.5 apresenta tcnicas
para desenho de grafos, as quais podem ser utilizadas na visualizao de dados relacionais; a Seo 2.6 discute a tcnica de visualizao Foco+Contexto; a Seo 2.7 comenta
a tcnica de Coordenadas Paralelas; a Seo 2.8 estuda a tcnica de visualizao baseada no uso de cones; j a Seo 2.9 apresenta um processo para guiar a utilizao das
tcnicas de visualizaes e para auxiliar no desenvolvimento de novas visualizaes; por
fim, a Seo 2.10 discute vrios tpicos adicionais e problemas em abertos na rea de
Visualizao de Informaes.
Informaes complementares sobre Visualizao de Informaes podem ser encontradas no nosso site: http://www.inf.ufg.br/funcomp/infovis.

2.2

Definies bsicas

Card e outros [Card et al., 1999] definem Visualizao de Informaes como sendo o
uso de representaes visuais de dados abstratos suportadas por computador e interativas
para ampliar a cognio. importante comparar, contudo, o estudo de Visualizao de
Informaes com uma rea similar chamada de Visualizao Cientfica.
Ambos os tipos de visualizao esto voltados para o processo de descoberta, de
percepo e de tomada de deciso, mais do que para uma simples observao de figuras.
Seus objetivos so ampliar nossa atividades cognitivas, melhorando o entendimento e
aproveitamento do que exposto e levando aquisio e solidificao do conhecimento.
Apesar da similaridade, na Visualizao de Cientfica os dados a serem apresentados geralmente correspondem a medidas de objetos fsicos, fenmenos da natureza ou posies em um domnio espacial, possuindo, assim, uma representao geomtrica. Como
exemplo de visualizaes nessa linha, podemos citar a visualizao de orgos do corpo
humano, de fluidos em movimento e, at mesmo, de funes matemticas.
J em uma Visualizao de Informaes, os dados so abstratos, no havendo
necessariamente uma representao geomtrica inerente aos mesmos. Neste caso, uma
imagem deve ser gerada com base nos relacionamentos ou informaes que podem ser
inferidos acerca dos dados.
A Figura 2.5 ilustra, de modo simplificado, um processo automatizado de Visualizao de Informaes, onde uma imagem produzida a partir de dados de entrada.
Observe que poderamos chamar esse processo de Visualizao de Dados, uma vez que
XXIV JAI

1267

a imagem est diretamente relacionada aos dados. Contudo, preferimos utilizar o termo
Visualizao de Informaes porque estamos mais interessados em obter informaes
acerca da relao entre os dados, do que nos seus valores isolados propriamente ditos.
Informao
Dados
Abstratos

Ferramenta
Computacional
de Visualizao
de Informaes

Figura

Figura 2.5: Processo simplificado de visualizao de informaes auxiliada por


computador.

Podemos classificar os dados abstratos a serem visualizados nas seguintes categorias:


Nominal conjunto de elementos distintos, sem uma relao de ordem entre eles.
Exemplo: Joo, Maria, Alberto;
Ordinal conjunto de elementos distintos, mas com uma relao de ordem entre
os mesmos. Exemplo: Segunda, Tera, Quarta, . . . , ou Janeiro, Fevereiro, . . . ; e
Quantitativo faixa de valores numricos. Essa categoria pode ser dividida em
Intervalos (com valores discretos) e Razo (representando uma faixa contnua de
valores).
Como veremos na Seo 2.3, essa classificao nos ajuda a escolher uma representao grfica adequada para os dados.
Um modelo de referncia para construir visualizao de informaes apresentado por Card e outros [Card et al., 1999] e mostrado na Figura 2.6. Esse modelo
um refinamento do esquema da Figura 2.5 que prev a diviso do processo de gerar uma
imagem para um conjunto de dados em trs etapas descritas a seguir.

Figura 2.6: Modelo de Referncia para Visualizao, adaptado de Card e outros.


[Card et al., 1999].

A primeira etapa chamada de Transformaes dos Dados. Nessa etapa, um


conjunto de dados brutos processado e organizado em uma representao lgica mais
XXIV JAI

1268

estruturada, geralmente na forma de uma ou mais tabelas. O processamento pode envolver


a eliminao de dados redundantes, errados ou incompletos, bem como a filtragem e
o agrupamento dos dados relevantes. Alm disso, pode ser feita a incluso de novas
informaes, como, por exemplo, de resultados de anlises estatsticas (mdia, soma total,
desvio padro, etc.) realizadas sobre os dados brutos. Uma forma comum de organizar
os dados em tabelas alocar uma linha para cada dado e uma coluna para cada atributo
diferente dos dados. Dessa forma, a quantidade de linhas informa o nmero total de dados
a serem visualizados, e o total de colunas representa a dimenso dos dados.
A prxima etapa o Mapeamento Visual. A tarefa aqui construir uma estrutura
visual que represente visualmente os dados da tabela. Toda estrutura visual pode ser
decomposta em trs partes: substrato espacial, marcas e propriedades grficas das marcas.
O substrato visual caracteriza o espao para a visualizao, sendo normalmente
representado por eixos, tais como os eixos X e Y do plano cartesiano. H quatro tipos
elementares de eixos:
U = eixo no estruturado (ou sem eixo);
N = eixo nominal (regio dividida em subregies);
O = eixo ordenado (regio dividida em subregies, onde a ordem das mesmas tem
importncia);
Q = eixo quantitativo (a regio tem uma mtrica).
As marcas visuais so smbolos grficos utilizados para representar os itens de
dados. Alguns tipos de marcas podem ser vistas na Figura 2.7 e consistem em pontos
(figuras geomtricas simples), linhas, reas, volumes e figuras complexas (tambm chamadas de cones ou glyphs).
Pontos
Linhas
Volumes

Conta
Ago Set
Out Nov Dez
Jan
Condomnio
179,61 183,81 201,21 219,73 238,10 168,90
Luz
14,58 23,50 30,24 35,94 27,30 24,19
ContaTelefone
51,40 38,35 149,00 143,95 164,10 126,68
Aluguel Telefone 40,00 40,00 40,00 40,00 40,00 40,00
Aluguel Apto
267,08 267,08 267,08 232,08 232,08 217,08
Faxina
52,40 52,40 52,40 52,40 52,40 52,40

reas
Figuras

Figura 2.7: Tipos de marcas visuais.

Por fim, as propriedades grficas das marcas so os atributos visuais que caracterizam as mesmas. Algumas das propriedades mais utilizadas so apresentadas na Figura 2.8.
Dessa forma, o Mapeamento Visual consiste em associar os itens de dados a marcas visuais em um substrato visual. Cada atributo dos dados pode ser associado a propriedades grficas das marcas.
Um exemplo de Mapeamento Visual pode ser observado na Seo 2.1, onde uma
tabela de despesas (Figura 2.2) foi mapeada em um substrato espacial (Figura 2.4) contendo um eixo quantitativo (eixo Y) e um eixo ordinal (eixo X). Cada item de dados,
XXIV JAI

1269

Orientao
Posio

Cor

Tamanho, rea, volume


ngulo
Inclinao

Textura
Forma
Animao, tempo, movimento, piscante

Figura 2.8: Propriedades grficas das marcas.

descrito por uma linha da tabela, foi associado a uma linha grfica na figura. Os atributos
desses dados, isto o nome da despesa e o seu valor em cada ms, foram associados cor
e altura da linha em seu diversos pontos.
A ltima etapa a de Transformaes Visuais, na qual possvel modificar e
estender as estruturas visuais interativamente atravs de operaes bsicas como:
Testes de localizao, que possibilitam obter informaes adicionais sobre um
item da tabela de dados;
Controles de ponto de vista, os quais permitem ampliar, reduzir e deslocar a imagem com o objetivo de oferecer vises diferentes; e
Distores da imagem, visando criar ampliaes de uma regio especfica em detrimento de outra.
importante ressaltar que os mecanismos de interao implementados nessa etapa
permitem ao usurio explorar diferentes cenrios para um melhor entendimento dos dados
visualizados. Alm disso, o esforo de explorao dos dados repassado em parte para o
computador, uma vez que os clculos e o redesenho da imagem so realizados pela mquina, deixando para o usurio a tarefa de observar o que acontece quando a visualizao
se modifica.
Como a rea de Visualizao de Informaes envolve o ato de ver (o qual, de
acordo com Marr [Marr, 1982], uma tarefa complexa que abrange a aquisio de imagens do ambiente), a representao e o armazenamento adequado das mesmas e a extrao
de informaes relevantes dentro de um contexto, os estudos sobre o assunto no podem
ser aprofundados sem o conhecimento de contribuies importantes advindas de diversos
ramos da Cincia. Sendo assim, Visualizao de Informaes se encontra intimamente
relacionada Psicologia, Lingustica e s Artes Visuais, no que se refere forma como
o ser humano v e interpreta o que est sendo visto. A Visualizao de Informaes
tambm possui uma forte relao com algumas subreas da Computao, como Viso
Computacional e Interao Homem-Computador.
Apesar de ser uma rea relativamente nova, j existem vrios congressos, conferncias e simpsios importantes sendo realizados em todo o mundo em Visualizao de
Informaes. Dentre eles, podemos citar:
ACM Symposium on Software Visualization (http://www.softvis.
org/);
Asian Pacific Symposium on Information Visualisation (http://www.it.
usyd.edu.au/~visual/apvis/);
XXIV JAI

1270

Eurographics / IEEE VGTC Symposium on Visualization (http://www.


comp.leeds.ac.uk/eurovis/);
IEEE Symposium on Information Visualization (http://www.infovis.
org/infovis/2005/);
International Conference of Information Visualization (http://www.
graphicslink.demon.co.uk/IV05/); e
Brazilian Symposium on Computer Graphics and Image Processing - SIBGRAPI
(http://www.sbc.org.br/sibgrapi/).
Alm disso, descries de diversas tcnicas e informaes adicionais sobre essa
rea podem ser encontradas em livros especilizados, tais como:

2.3

The Visual Display of Quantitative Information [Tufte, 1983];


Envisioning Information [Tufte, 1990];
Visual explanations: images and quantities, evidence and narrative [Tufte, 1997];
Readings in Information Visualization - Using Vision to Think [Card et al., 1999];
Information Visualisation [Spence, 2000]; e
Information Visualization - Perception for Design [Ware, 2004].

Visualizaes efetivas

Nem toda forma de visualizao til para o usurio. Em geral, dois atributos de uma
visualizao nos ajudam a determinar a sua provvel utilidade. Esses atributos, apresentados por Mackinlay como critrios para avaliar linguagens grficas [Mackinlay, 1986],
so a expressividade e a efetividade.
Uma visualizao pode ser considerada expressiva se ela capaz de mostrar todos
os dados de interesse do usurio e nada mais que isso.
J a efetividade est relacionada com a facilidade de se compreender os dados
apresentados. Para ser efetiva, uma visualizao deve ser de rpida percepo e induzir a
uma quantidade menor de erros de interpretao do que outras formas de se visualizar os
mesmos dados.
Efetividade e expressividade so aspectos importantes, porque sem os mesmos
uma visualizao pode no ser capaz de enfatizar padres relevantes nos dados, no trazendo, assim, quaisquer informaes novas alm daquilo que j trivialmente conhecido.
Alm disso, uma visualizao tambm pode ser de difcil entendimento ou, at mesmo,
sugerir padres que na verdade no existem, o que pode levar a uma interpretao errnea
dos dados.
A Figura 2.9 ilustra problemas com efetividade de visualizaes para apresentar
a cotao do Dlar para compra em Reais. A visualizao (a) mostra a cotao no perodo de 13 a 18/04/2005, utilizando um mapeamento visual em que o valor do Dlar
foi associado saturao da cor utilizada em uma seqncia de crculos. Para cada dia
til do perodo h um crculo correspondente; quanto mais escuro o crculo, maior
a cotao do Dlar. Obviamente essa visualizao no to efetiva quanto a mostrada
em (b), onde os dados so apresentados intuitivamente atravs um grfico XY de linhas.
Por outro lado, essa segunda visualizao pode sugerir que houve uma forte tendncia de
aumento do Dlar, uma vez que a linha de projeo da cotao ngreme. Tal grfico,
XXIV JAI

1271

contudo, carece de dados para situar o perodo analisado em um contexto maior. Se tomarmos a situao do Dlar entre 08/04/2005 a 13/05/2005, como demonstrado em (c),
perceberemos que houve, na verdade, uma queda crescente do seu valor. Esse fato foi,
inclusive, comentado pelos principais jornais do Pas na poca. As duas primeiras visualizao no so, portanto, efetivas, porque no conseguem transmitir para o observador
uma informao correta sobre a tendncia significativa da variao do Dlar.

Figura 2.9: Visualizaes da cotao do Dlar para compra.

Os problemas mais comuns que podem comprometer a efetividade de uma visualizao so:
no colocar dados suficientes na visualizao de forma a contextualizar as informaes mais relevantes apresentadas;
desconsiderar atributos importantes dos dados;
utilizar grficos sobrepostos em escalas diferentes ou com sistemas de coordenadas distintos, o que impede uma comparao justa entre os dados; e
no fazer um mapeamento dos dados para marcas e atributos visuais de forma
adequada.
XXIV JAI

1272

Obviamente, caractersticas como cor, dimensionalidade, perspectiva, luminosidade, tamanho e forma dos objetos so fatores que auxiliam no processo de cognio e
que podem ser explorados na construo de visualizaes efetivas. Outros aspectos como
existncia de mecanismos de interao com os dados e a possibilidade de compactar uma
grande quantidade de informaes teis em uma mesma imagem contribuem para a efetividade de uma visualizao.
A seguir apresentamos algumas sugestes para aumentar a expressividade e efetividade das visualizaes:
Utilize o modelo de visualizao apresentado na Figura 2.6 no desenvolvimento de
novas visualizaes. Esse modelo ajuda na modularizao do processo de transformao de dados brutos em imagens interativas. Com isso, novos recursos podem ser adicionados visualizao sem a necessidade de alterar todo o processo.
Elimine da visualizao grficos e textos desnecessrios. Uma boa medida de
quantos elementos so desnecessrios em uma figura a quantidade de tinta ou de
pixels gastos com itens que no so dados de interesse.
Busque simplicidade; isto , entre duas formas diferentes de representar visualmente uma mesma informao, prefira a que mais simples.
Aumente a quantidade de dados por centmetro quadrado. Isso parece contrrio
s duas recomendaes anteriores, contudo, o que se deseja aqui colocar mais
dados de interesse na imagem, sem sobrecarreg-la demasiadamente, de forma a
ajudar na compreenso do problema como um todo.
Explore a utilizao de smbolos e de atributos visuais que facilitem a percepo
dos dados e dos padres existentes nos mesmos. Por exemplo, possvel destacar
elementos importantes em uma imagem atravs do uso de uma cor mais chamativa ou colocando informaes piscando na tela. Certas cores e smbolos grficos
tambm j so bem conhecidos culturalmente por terem um significado especfico;
essas cores e smbolos podem ser associados a dados abstratos para transmitir-lhes
um significado similar.
Permita formas de interao com a visualizao.
Utilize animaes para mudar gradativamente uma visualizao sempre que necessrio, de forma a preservar o mapa mental que o usurio tem da imagem. Se
uma visualizao muda drasticamente, ento pode ser difcil para o usurio entender o que aconteceu, uma vez que o seu mapa mental (de onde e como esto
localizados visualmente os dados) no coincide com a nova representao visual.
No que diz respeito utilizao de atributos visuais, Mackinlay [Mackinlay, 1986]
prope ordens de prioridade para se associar atributos de dados a atributos visuais, as quais so uma extenso do trabalho desenvolvido por Clevelan e McGill
[Cleveland and McGill, 1984]. As ordens de prioridade de Mackling so apresentadas
na tabela a seguir para trs tipos de dados e vo do atributo visual mais perceptvel at o
menos perceptvel. A idia associar os atributos mais importantes dos dados aos atributos visuais no topo da lista, seguindo a seqncia recomendada.
Como exemplo, suponha que se deseje associar dados quantitativos de pacientes
de um hospital, como peso, altura e tempo de internao, uma imagem. De acordo com a
Tabela 2.1, os atributos mais importantes devem ser associados posio de um elemento
visual na tela. Os demais atributos podem ser associados ao comprimento, inclinao e
rea do elemento, nesta ordem.
XXIV JAI

1273

Percepo
Maior

Menor

Dados Quantitativos
Posio
Comprimento
ngulo
Inclinao
rea
Volume
Densidade
Satrurao de cor
Croma de cor
Textura
Conexo
Envolvimento
Forma

Dados Ordinais
Posio
Densidade
Saturao de cor
Croma de cor
Textura
Conexo
Envolvimento
Comprimento
ngulo
Inclinao
rea
Volume
Forma

Dados Nominais
Posio
Croma de Cor
Textura
Conexo
Envolvimento
Densidade
Saturao de cor
Forma
Comprimento
ngulo
Inclinao
rea
Volume

Tabela 2.1: Acuidade de percepo de atributos visuais.

2.4

Resumo das tcnicas de visualizao

Nesta seo apresentado um breve levantamento das tcnicas de Visualizao de Informaes.


2.4.1

Primeiras formas de visualizao de informaes

As formas mais antigas de visualizao de informaes remontam Pr-Histria, quando


os homens da poca expressavam visualmente o que se passava no seu viver atravs de
desenhos e pinturas em rochas e cavernas. As pinturas mais antigas foram encontradas
nas cavernas em Altamira, na Espanha, e em Lascaux, na Frana, e datam de 25.000
a.C. Essas manifestaes iniciais da expresso artstica registraram atividades e hbitos
humanos, sendo hoje um grande auxlio para o entendimento de nossa evoluo cultural.
Caminhando um pouco mais na linha do tempo, observamos uma iniciativa, por
parte dos rabes, de elaborar um mtodo visual para realizar contas de multiplicao:
o mtodo tabular, ilustrado na Figura 2.10. Esse mtodo levou ao desenvolvimento do
mtodo de multiplicao atual.

Figura 2.10: Mtodo tabular.

No exemplo mostrado na Figura 2.10, uma tabela desenhada contendo o nmero


217 acima e o nmero 14 esquerda da mesma. O produto de cada dgito da esquerda
com um digito de cima colocado na interseo da linha com a coluna associada a esses
dgitos. Assim, o produto de 1 por 217 colocado na primeira linha da tabela e o produto
de 4 por 217 colocado na segunda linha. O produto final de 217 por 14 dado pela soma
dos dgitos nas diagonais, ou seja:
XXIV JAI

1274

8
4 + 2 + 7 = 3 (vai 1)
(vai 1) + 8 + 1 = 0 (vai 1)
(vai 1) + 2 = 3
Utilizar uma folha de papel para realizar o clculo com o mtodo descrito anteriormente proporciona uma extenso para a memria humana, visto que fazer a conta de
cabea pode ser um processo mais demorado e, dependendo do caso, complicado.
Outros exemplos de visualizao permitiram a transmisso de conhecimento e a
descoberta de novas informaes de maneira efetiva.
Em 1845 ocorreu uma incidncia de clera no Distrito de Soho, em Londres. O
mdico John Snow acabou criando um mapa dessa rea no qual pontos pretos representavam mortes individuais por clera e marcas em X representavam as posies de bombas
de gua3 . A partir desse mapa, o Dr. Snow observou que as mortes estavam concentradas nos arredores da bomba da Broad Street e que, portanto, poderiam estar associadas
gua. importante lembrar que a forma de transmisso da clera no era conhecida ao
certo na poca.
Outra forma precursora de visualizao o mapa de M. Charles Minard que retrata a famosa marcha de Napoleo na Rssia (1812)4 , quando 422.000 soldados partiram
da Frana e somente 10.000 retornaram. Esse mapa um dos exemplos de visualizao
mais citados porque agrega diversas informaes de forma efetiva em uma nica figura. A
marcha dos soldados representada, por exemplo, por uma linha sobre um mapa geogrfico simplificado. A largura da linha em cada ponto do mapa proporcional quantidade
de soldados que formavam o grupo naquele percurso. A ida para Moscou e a retirada do
grupo indicada pela cor da linha. Alm disso, um grfico mostrando a queda da temperatura durante a volta de Napoleo apresentado na parte inferior da figura, alinhado
com a linha que indica a marcha dos soldados. A visualizao ajuda a perceber como as
condies climticas desfavorveis contriburam para a mortalidade dos soldados.
O mapa do metr de Londres constitui outro bom exemplo de visualizao de
informaes. No incio do sculo XX, o Ingls Harry Beck percebeu que passageiros
de metr no precisavam saber da posio geogrfica exata por onde as linhas dos trens
passavam para poder utilizar eficientemente esse sistema de transporte. Ele verificou que,
uma vez no subsolo, o importante era ter um conhecimento das estaes e de quais linhas
de metr faziam conexo entre as mesmas. Assim, um passageiro poderia planejar a sua
viagem considerando apenas as estaes de partida e de destino e uma rota vivel entre
elas. Beck ento desenhou um novo mapa de metr para Londres que desconsiderava a
posio geogrfica precisa da malha ferroviria, em favor de linhas de conexo mais retas
e de espaamento uniforme entre as estaes. Alguns propriedades geogrficas foram
3

O mapa de John Snow pode ser visto em http://www.ph.ucla.edu/epi/tufte\_snow2.


htm (site acessado em 17/05/05).
4
Diversas adaptaes e tradues do mapa de Minard tem sido feitas, existindo inclusive uma verso
animada que mostra gradativamente a marcha de Napoleo. Um verso fiel do mapa traduzida para o
Ingls pode ser encontrada em http://www.edwardtufte.com/tufte/minard (site acessado em
17/05/05)
XXIV JAI

1275

mantidas no mapa tais como: a direo e a orientao geral das linhas (Norte-Sul e LestOeste) e a distncia relativa entre estaes adjacentes. A abordagem de visualizao
desenvolvida por Herry Back foi publicada em 1933 e utilizada hoje nos principais
metrs do mundo por ser simples e bastante intuitiva5 .
Com o passar do tempo, as tcnicas de visualizao de informaes foram evoluindo, motivadas pelo desenvolvimento da Computao e pela necessidade crescente de
gerenciar e apresentar uma quantidade cada vez maior de dados. Esses fatores levaram ao
surgimento da rea de Visualizao de Informaes como a conhecemos, composta por
vrios estilos de visualizao com finalidades distintas.
A partir deste ponto faremos uma breve explanao sobre cada um dos tipos de
tcnicas de visualizao e aprofundaremos algumas delas nas sees subseqentes.
2.4.2

Visualizaes atuais

Existem dois eixos principais para o estudo das tcnicas de visualizao de informaes.
O primeiro eixo considera o modo como as tcnicas exploram o substrato visual, as marcas e as propriedades visuais do desenho. Nesse eixo, temos tcnicas que utilizam cores,
exploram a dimenso do substrato visual, modificam dinamicamente a associao dos
dados a marcas visuais, variam a escala de ampliao da imagem e empregam figuras
metafricas para apresentar informaes. No segundo eixo, as tcnicas so classificadas
de acordo com as caractersticas dos dados a serem visualizados. Dessa forma, existem
tcnicas adequadas para dados unidimensionais, bidimensionais e tridimensionais com
atributos aparentemente independentes, multi-dimensionais (quatro ou mais dimenses)
e redes (grafos).
Considerando o primeiro eixo definido anteriormente, uma caracterstica bastante
explorada por vrias tcnicas na representao de informaes a cor das marcas visuais.
Colocar a cor certa no lugar certo no uma tarefa trivial, uma vez que a associao inapropriada de atributos de dados a cores pode causar uma catstrofe visual. Tufte
[Tufte, 1990] apresenta alguns princpios para o uso correto das cores. Por exemplo, no
caso de mapas, cores puras, muito fortes ou brilhantes, podem resultar em efeitos desagradveis quando empregadas em grandes reas adjacentes, mas podem ter efeitos extraordinrios quando usadas de forma reduzida ou entre dois tons de background. O uso de
luz, cores brilhantes misturadas com branco, podem gerar tambm efeitos desagradveis,
principalmente se as cores forem utilizadas em grandes reas. Ware [Ware, 2000] discute
a importncia das cores e tambm apresenta alguns cuidados com o uso das mesmas, principalmente em relao ao contraste da cor de uma marca visual com a cor de fundo. O
contraste entre cores adjacentes pode alterar significativamente a percepo de uma cor,
fazendo com que ela parea ser mais clara ou escura. Existem meios para tentar reduzir
esses efeitos, como, por exemplo, desenhar uma fina borda branca ou preta ao redor do
objeto colorido.
Com relao dimenso do substrato visual, Card e outros [Card et al., 1999]
trazem uma discusso detalhada sobre o uso de estruturas dimensionais. Estruturas unidimensionais so tipicamente empregadas para a apresentao de documentos de texto
5

O mapa original de metr de Londres, de 1933, pode ser encontrado em http://img223.echo.


cx/img223/1470/beckmap609ah.jpg (site acessado em 18/05/05).
XXIV JAI

1276

ou de linhas do tempo, podendo ser combinadas com um segundo ou terceiro eixo para
mostrar comparao entre valores. Estruturas visuais bidimensionais, como grficos de
linhas, barras, pizza e mapas, so tipicamente utilizadas para apresentar dados estatsticos, descrever funes matemticas ou visualizar informaes geogrficas. Estruturas
visuais 3D, por sua vez, so mais usadas para visualizar dados fsicos ou para combinar
visualizaes em 2D.
A Figura 2.4 da Seo 2.1 um exemplo de visualizao que emprega um substrato visual bidimensional, com dois eixos.
A Figura 2.11 mostra uma tela do programa HomeFinder
[Williamson and Shneiderman, 1992], a qual tambm um bom exemplo de visualizao 2D. O HomeFinder localiza em um mapa geogrfico casas disponveis para
venda. O ponto forte do sistema a possibilidade de realizar consultas dinmicas base
de dados a fim de filtrar casas de acordo com o seu preo, quantidade de quartos e de
banheiros e a distncia em relao a um ponto de referncia, entre outros parmetros.

Figura 2.11: Homefinder. Figura gerada utilizando o software demonstrativo em


http://dq.com/homefind/.

Outra categoria de tcnicas de Visualizao de Informaes composta por abordagens que variam a escala de ampliao da imagem. Uma tcnica dessa categoria
a Foco+Contexto, a qual proporciona uma viso geral dos dados e, ao mesmo tempo,
destaca uma determinada regio de interesse (foco) atravs de uma distoro da imagem
visualizada. Diversas variaes da tcnica de Foco+Contexto existem, sendo algumas
delas discutidas na Seo 2.6.
Uma abordagem similar Foco+Contexto mas que no utiliza distores chamada de Overview+Detail. Essa tcnica mostra uma viso geral dos dados como uma
figura reduzida em um regio da tela (o overview), enquanto apresenta um subconjunto
dos dados de modo ampliado e detalhado em outra regio (o detail). A tcnica sincroniza a regio ampliada com a viso geral atravs de uma pequena marca visual na figura
reduzida, indicando qual parte dos dados foi ampliada. Essa abordagem amplamente
utilizada em editores e visualizadores de documentos texto e de imagens.
Alm das formas j descritas de visualizao, metforas visuais vm sendo emXXIV JAI

1277

pregadas como uma nova maneira de apresentar e explorar informaes. Como exemplo,
Panas e Berrigan [Marcus et al., 2003] prope uma abordagem para visualizar software
que mapeia mtricas de programas em estruturas 3D de uma cidade virtual. Com esse
tipo de visualizao, possvel detectar problemas no software e reduzir gastos com a sua
manuteno. Um trabalho similar apresentado por Balzer e outros [Balzer et al., 2004],
na qual estruturas estticas de programas orientados a objetos so representadas como
objetos tridimensionais distribudos sobre um plano.
Nessa mesma linha de imagens metafricas, outra proposta interessante o uso de
paisagens (landscapes) para representar interrelaes entre grupos de dados. A proposta
tem sido utilizada, entre outras aplicaes, para visualizar a similaridade entre documentos texto com base em palavras-chave. Nesse caso, a tcnica consiste em desenhar o
relevo de uma ilha de tal forma que cada palavra-chave seja associada a uma nica regio
da mesma. A quantidade de documentos onde cada palavra-chave aparece utilizada para
determinar a altura do relevo na regio correspondente. Alm disso, se no h documentos que compartilham duas palavras-chave, ento no existe uma linha reta de terra que
liga as regies correspondentes. A Figura 2.12 mostra uma tela do KartOO, um site de
busca na web (http://www.kartoo.com/) que apresenta seus resultados na forma
de landscapes interativos.

Figura 2.12: Exemplo de landscape.

Passando para o segundo eixo apresentado no incio dessa seo, as tcnicas de


visualizao de informaes podem seguir uma classificao de acordo com as caractersticas dos dados. Dados lineares e bimensionais podem ser visualizados atravs de vrias
tcnicas como: grficos de pizza, de linha e de barra, Overview+Detail e Foco+Contexto.
Quando os dados possuem n dimenses, com n maior que 3, tcnicas mais elaboradas so necessrias. Uma dessas tcnicas consiste em mapear apenas dois atributos dos
dados para coordenadas X Y de um plano cartesiano e associar os demais atributos
forma, cor e tamanho de objetos visuais. Outra soluo projetar o espao n-dimensional
no plano cartesiano, atravs de alguma tcnica de projeo, como a Multidimensional
Scalling [Borg and Groenen, 1997].
Duas outras tcnicas de visualizao para dados multidimensionais bastante interessantes so as Coordenadas Paralelas e os Glyphs. A tcnica de Coordenadas Paralelas
XXIV JAI

1278

associa as dimenses dos dados a eixos paralelos verticais equidistantes, denominados


coordenadas. Nessa tcnica cada dado mapeado em uma linha conectando pontos nos
eixos. J os Glyphs (ou cones) podem ser entendidos como uma representao simblica que evidencia caractersticas essenciais de um dado ao qual se refere. Os Glyphs so
construdos atravs de um mecanismo de codificao que associa atributos dos dados a
parmetros do cone. As tcnicas de Coordenadas Paralelas e de Glyphs so explicadas
com mais detalhes nas prximas sees deste trabalho.
Se os dados representarem relaes entre objetos, uma forma efetiva de visualizlos construir um grafo que descreva essa relao e gerar um desenho do mesmo. Tcnicas para desenho de grafos so apresentadas na Seo 2.5. Relaes hierrquicas entre dados podem ser visualizadas atravs de desenhos de rvores, o que tambm mencionado
naquela seo. Outras tcnicas, como o browser hiperblico, apresentado na Seo 2.6,
podem ser utilizadas para mostrar estruturas relacionais.
No
caso
especfico
de
hierarquias,
Johnson
e
Shneiderman
[Johnson and Shneiderman, 1991] utilizam uma tcnica, chamada Tree-Map, que faz uso
de 100% do espao disponvel na tela para mostrar uma estrutura hierquica. A tcnica
consiste em representar o nvel mais alto da hierarquia como uma regio retangular que
preenche todo o espao de desenho. Os nveis mais baixos so desenhados recursivamente
como retngulos dentro da regio maior. O tamanho de cada retngulo proporcional
ao nmero de itens nos nveis imediatamente abaixo na hierarquia. Um exemplo dessa
tcnica mostrado na Figura 2.13. Outro exemplo a visualizao de notcias apresentadas em http://www.marumushi.com/apps/newsmap/newsmap.cfm, onde
o usurio pode filtrar informaes de acordo com o tema, data e pas.

Figura 2.13: Exemplo de uso da tcnica tree-map. A imagem foi gerada atravs
do software desenvolvido por Ben Shneiderman do Laboratrio de
Interao Homem-Computador da Universidade de Maryland.

Conforme evidenciado no incio dessa seo, o objetivo aqui era fazer um rpido passeio pelos tipos de tcnicas de visualizao. Algumas delas so aprofundadas
nas prximas sees. Entretanto, informaes mais completas sobre diversas tcnicas podem ser encontradas em livros especializados no assunto [Card et al., 1999, Spence, 2000,
Ware, 2000].
XXIV JAI

1279

2.5

Desenho de Grafos

Grafos so modelos matemticos formados por estruturas simples que consistem de um


conjunto de vrtices e um conjunto de arestas. Os vrtices geralmente representam objetos
concretos ou abstratos em diversas reas do conhecimento humano, e as arestas indicam
relaes entre esses objetos. Desenho de Grafos [Di Battista et al., 1999] uma das tcnicas de visualizao mais comumente utilizadas para demonstrar relaes entre objetos ou
pessoas e estruturas hierrquicas. As tcnicas de Desenho de Grafos tm aplicaes, por
exemplo, na micro-eletrnica para desenho de circuitos VLSI; na Engenharia de Software
para representar estruturas modulares de programas e a hierarquia de classes e de objetos
(principalmente nas linguagens visuais e nas ferramentas de desenvolvimento de sistemas); em aplicaes CAD para facilitar a anlise e a manipulao de dados; em sistemas
de telefonia para ilustrar uma rede de chamadas telefnicas em uma determinada regio
ou pas; e em ambientes de comunidade virtual para apresentar redes sociais. Atualmente,
basta abrir um livro de cincias ou uma revista cientfica para perceber que as figuras ou
diagramas ilustrativos tm um bom trabalho subjacente de desenho de grafos.
Nesta seo apresentamos algoritmos para visualizar grafos. Algumas definies
bsicas em Teoria dos Grafos so dadas inicialmente, sendo que o leitor mais familiarizado com o assunto pode avanar diretamente para a Subseo 2.5.2.
2.5.1

Grafos

Um grafo G (nodirecionado6 ) um par (V, E), onde V um conjunto finito de pontos


denominados vrtices e E um conjunto finito de arestas. Uma aresta e E um par
no ordenado xy de vrtices distintos de V . A aresta e pode ser escrita como xy ou yx
e indica que x e y so os extremos de e. Neste caso, dizemos que x e y so adjacentes e
que a aresta xy incidente em x e em y. O grau de um vrtice x V definido como
sendo o nmero de arestas de G incidentes a x.
Um caminho, de um vrtice x para um vrtice y, em um grafo G consiste de uma
seqncia Sxy = (x = v0 , v0 v1 , v1 , v1 v2 , . . . , vk1 vk , vk = y) onde vi vi+1 so arestas de
G (para i = 0, 1, . . . , k 1) e v0 , . . . , vk so vrtices de G. Sem perda de generalidade,
podemos omitir os vrtices da seqncia. Deste modo, um caminho de um vrtice x para
um vrtice y uma seqncia de arestas Sxy = (v0 v1 , v1 v2 , . . . , vk1 vk ), onde v0 = x,
vk = y, e vi vi+1 so arestas de G para i = 0, 1, . . . , k 1. Quando um caminho tem
ambos os seus extremos iguais (v0 = vk ), ele chamado caminho fechado (ou ciclo).
O comprimento de um caminho Sxy representado por |Sxy | e definido como sendo o
nmero de arestas da seqncia. A distncia entre dois vrtices x e y no grafo (tambm
conhecida como distncia terica) dada pelo comprimento do menor caminho de x para
y.
Um grafo G conexo se existe um caminho Sxy para todo par de vrtices distintos
x e y de G.
O centro terico de um grafo no-direcionado G representado por um vrtice x
cuja soma das distncias de x a todos os demais vrtices de G mnima.
Dizemos que um grafo G0 = (V 0 , E 0 ) um subgrafo de G = (V, E), se V 0 V e
6

tambm chamado de grafo no-orientado

XXIV JAI

1280

E 0 E. Se G0 contm todas as arestas de G cujos extremos so vrtices de V 0 , ento G0


chamado de subgrafo induzido de G.
Um grafo H dito gerado de um grafo G, notao H v G, se H um subgrafo de
G, e quaisquer dois vrtices u e v so adjacentes em H se e somente se forem adjacentes
em G.
Dois grafos so isomorfos se h uma correspondncia entre seus conjuntos de
vrtices que preserva a adjacncia. Assim, G = (V, E) isomorfo a G0 = (V 0 , E 0 ) se
existe uma funo bijetora : V V 0 , tal que xy E implica que (x)(y) E 0 e
vice-versa. Naturalmente, grafos isormofos tm o mesmo nmero de vrtices e de arestas.
De forma semelhante definio de grafo no-direcionado, um grafo direcionado
G um par (V, E), onde V um conjunto finito de vrtices e E um conjunto de pares ordenados de vrtices. Num grafo direcionado, uma aresta e = (x, y) de E dita
discindente de x e incidente em y, respectivamente. O vrtice y dito adjacente a x.
O grau de entrada de um vrtice x de um grafo direcionado G definido como
sendo o nmero de arestas que incidem em x. O grau de sada deste vrtice dado pelo
nmero de arestas discidentes de x. O grau de x definido como a soma entre o grau de
entrada e o grau de sada de x.
Um caminho direcionado de um vrtice x para um vrtice y uma seqncia de
arestas Sxy = ((v0 , v1 ), (v1 , v2 ), . . . , (vk1 , vk )), onde (vi , vi+1 ) so arestas orientadas de
G, para i = 0, 1 . . . k 1. Quando um caminho direcionado tem ambos os seus extremos
iguais (v0 = vk ), ele chamado caminho direcionado fechado (ou ciclo direcionado).
Um grafo direcionado dito acclico (tambm conhecido por DAG, do ingls Directed
Acyclic Graph) se no possui caminhos direcionados fechados.
Se existe um caminho direcionado de um vrtice x para um vrtice y em um grafo
direcionado G, ento dizemos que y alcanado por x. Definimos o conjunto alcanvel
do vrtice x, notao Rx , como sendo o conjunto de todos os vrtices alcanveis por x.
Um grafo Gs no-direcionado subjacente a um grafo direcionado G se Gs
obtido a partir de G removendo-se somente a orientao de suas arestas.
Um grafo direcionado fracamente conexo se seu grafo subjacente for conexo.
Os grafos direcionados fracamente conexos sero referenciados, neste trabalho, apenas
por grafos conexos, suprimindo-se o termo fracamente.
Para um grafo G = (V, E), direcionado ou nodirecionado, denotamos por |V |
e |E| os tamanhos dos conjuntos V e E, respectivamente. O tamanho de um grafo G,
notao |G|, consiste da soma |V | + |E|.
Uma rvore um grafo A = (V, E) conexo onde |E| = |V | 1. Todo vrtice
com grau 1 de uma rvore chamado de folha.
Uma rvore com raiz uma rvore A = (V, E) que possui um vrtice r V ,
chamado de raiz, e uma ordem hierrchica dos seus vrtices que inicia em r e termina
nas folhas. A profundidade de um vrtice v V dada pela distncia de v a r. A altura
de A a maior profundidade de seus vrtices. A hierarquia definida de acordo com
a profundadide de cada vrtice. A altura de A a maior profundidade de seus vrtices.
Os filhos de um vrtice v V so os vrtices adjacentes a v que possuem profundidade
XXIV JAI

1281

maior do que ele; nesse casso, v chamado de pai desses vrtices. A rvore A dita
binria se a raiz tem grau mximo dois e todos os demais vrtices possuem grau menor
ou igual a trs.
Os interessados em se aprofundar em Teoria do Grafos podero encontrar outras
definies em [Bollobs, 1978, Swamy and Thulasiraman, 1981].
2.5.2

Processo de desenho

Um desenho bidimensional de um grafo G = (V, E) uma funo D : G IR2 que


associa a cada vrtice e aresta de G um objeto no IR2 . Neste documento damos enfoque a
desenhos bidimensionais de grafos. Desta forma, omitiremos o adjetivo bidimensional,
ficando este subentendido.
Um processo de desenho de grafos geralmente comea com uma representao de
um grafo numa forma combinacional, como, por exemplo, uma matriz ou uma lista de
adjacncias, e resulta em um desenho que adota uma representao grfica e define uma
localizao no plano para cada vrtices e aresta do grafo. Esse processo ilustrado na
Figura 2.14.
1

G=(V,E)
V={1,2,3,4,5}
E={(1,2),(1,3),(2,3),
(2,4),(2,5),(3,5),
(4,5)}

Algoritmo de
Desenho

Figura 2.14: Processo de desenho de grafos.

Para obter um desenho final de qualidade, o processo de Desenho de Grafos deve


envolve trs etapas:
1. escolher um padro grfico para vrtices e arestas;
2. definir critrios que determinam a qualidade esttica do desenho; e
3. produzir um desenho com o padro grfico adotado que satisfaa os critrios estticos definidos.
O padro grfico determina a forma com que os vrtices e as arestas so representados geometricamente. Existem muitos padres grficos, sendo que, o mais comum desenhar os vrtices como crculos e as arestas como linhas poligonais7 . Os pontos onde as
linhas poligonais mudam de direo so chamados de dobras (observe a Figura 2.15(a)).
Dentro do padro de linhas poligonais existem duas variaes de particular interesse quanto representao das arestas: cada aresta pode ser simbolizada por um nico
segmento de reta, e, neste caso, o desenho chamado de desenho em linhas retas (Figura 2.15(b)); ou cada aresta pode ser simbolizada por vrios segmentos de retas ortogonais aos eixos do plano, e o desenho chamado de desenho ortogonal (Figura 2.15(c)).
7

Alguns autores desenham as arestas como arcos

XXIV JAI

1282

dobra

(a)

(b)

(c)

Figura 2.15: Padro grfico: (a) linhas poligonais, (b) linhas retas e (c) desenho
ortogonal.

Algumas terminologias tm sido empregadas para identificar certas propriedades


visuais apresentadas pelos desenhos de grafos. De um modo geral, dizemos que um desenho produzido sobre uma grade quando utilizamos uma regio reticulada para desenhar
vrtices e pontos de dobra das arestas.
Um desenho de um grafo direcionado em linhas poligonais chamado de upward
quando todas as suas arestas possuem pelo menos uma componente da linha poligonal
voltada para cima e nenhuma componente volta para baixo. O conceito de upward pode
ser utilizado de forma mais intuitiva e abrangente para referenciar um desenho de um
grafo direcionado em que todas as arestas esto voltadas para um nico sentido, seja esse
para baixo ou para cima.
Desenhos que no apresentam cruzamentos de arestas e que no possuem sobreposio de vrtices em arestas so denominados de planares.
possvel gerar um nmero infinito de desenhos diferentes para um mesmo grafo,
independente do padro grfico escolhido. Contudo, somente uma parcela desses desenhos tm alguma utilidade prtica.
Na maioria das vezes, entre todos os possveis desenhos, estamos interessados
apenas naqueles que so legveis, ou seja, que ajudam na visualizao dos vrtices e
arestas e, portanto, na compreenso do grafo.
Em outras situaes, o importante no obter propriamente legibilidade, mas sim,
atender a certas necessidades que facilitem o mapeamento direto do desenho em algum
objeto de aplicao real. Citamos como exemplo o caso do projeto de circuitos digitais,
cujo objetivo maior gerar diagramas eltricos com o mnimo possvel de cruzamentos
entre conexes.
A escolha de qual subconjunto de desenhos til pode ser uma atividade subjetiva, que varia de acordo com o gosto particular de cada usurio. Veja, por exemplo, os
desenhos de um mesmo grafo direcionado apresentados na Figura 2.16. Um grande nmero de pessoas pode achar mais interessante o desenho da Figura 2.16(a), uma vez que
este exibe simetrias; no entanto, possvel que outras pessoas gostem mais do desenho
da Figura 2.16(b), pois ele mostra arestas com orientao uniforme para baixo.
Com o objetivo de eliminar essa subjetividade, definimos um conjunto de critrios
que indicam quais so as caractersticas nos desenhos que nos agradam. Estes critrios
so denominados, grosso modo, de critrios estticos, por estarem freqentemente relaXXIV JAI

1283

(a)

(b)

Figura 2.16: Subjetividade na definio do que seja um bom desenho.

cionados com caractersticas estticas visuais. Apesar disso, eles podem refletir aspectos
de outra natureza (no esttica).
Alguns exemplos de critrios estticos gerais utilizados so:

apresentar poucos cruzamentos de arestas,


exibir simetrias8 ,
distribuir os vrtices uniformemente no espao de desenho,
mostrar arestas com comprimento uniforme e
dispor as arestas numa mesma direo, tanto quanto possvel (no caso de grafos
direcionados).

Podemos dizer que a qualidade de um desenho est associada ao grau de satisfao


de um conjunto de critrios estticos. Dependendo de quanto um desenho atende a certo
critrio, ele pode ser considerado como de boa ou de m qualidade. A busca por desenhos
de boa qualidade comumente envolve a satisfao de vrios critrios estticos ao mesmo
tempo e tratada na literatura como um problema de otimizao multiobjetivo.
Alm de critrios estticos, podemos definir tambm restries para orientar
a elaborao dos desenhos. As restries estabelecem regras que devem ser cumpridas
necessariamente. So exemplos de restries de desenhos exigir que um conjunto de
vrtices seja desenhado em uma determinada posio ou seguindo um padro grfico
diferente dos demais. Enquanto uma restrio nunca deve ser desrespeitada, um critrio
esttico pode ser atenuado dentro de um certo grau de tolerncia.
A atividade de desenhar grafos em linhas poligonais divide-se em dois paradigmas: o posicionamento dos vrtices placement e o roteamento das arestas routing. O
primeiro paradigma consiste em adotar um padro grfico para desenhar as arestas e encontrar uma localizao para os vrtices que atenda a alguns critrios estticos ou restries. O segundo consiste em fixar a posio dos vrtices e satisfazer a critrios estticos
ou restries roteando as arestas do grafo.
A busca por desenhos de boa qualidade, tanto para problemas de posicionamento
como de roteamento, incorre em muitas dificuldades. A principal delas segue do fato de
que a obteno de bons desenhos freqentemente est associada a problemas NP-Difceis
[Di Battista et al., 1994, Eades, 1989].
8

Definimos o nmero de simetrias de um desenho de forma simplificada aqui, como sendo a quantidade
de operaes distintas de rotao e de reflexo que podem ser realizadas sobre a figura sem alterar a sua
forma original.
XXIV JAI

1284

Devemos observar, tambm, que nem sempre existe um desenho de um grafo que
satisfaa de modo simultneo dois ou mais critrios estticos. comum ocorrer situaes
em que a satisfao ampla de um determinado critrio implica no negligenciamento de
outro. Quando ocorre esse tipo de situao, dizemos que os dois critrios so conflitantes
entre si. Nas Figuras 2.17 e 2.18, ilustramos exemplos de conflitos.
A Figura 2.17 mostra dois desenhos de um grafo completo de 5 vrtices. O desenho (a) possui o mximo de simetrias, contudo, apresenta 5 cruzamentos. J o desenho
(b) possui a menor quantidade de cruzamentos, mas no exibe a simetria de rotao vista
no desenho (a), entre outras simetrias.

(a)

(b)

Figura 2.17: Conflito entre os critrios de poucos cruzamentos e muitas simetrias.

A Figura 2.18 mostra desenhos de um grafo direcionado acclico. O desenho (a)


upward, enquanto o desenho (b) planar. Observe que no existe um desenho desse grafo
que seja planar e upward simultaneamente.

(a)

(b)

Figura 2.18: Conflito entre os critrios de orientao uniforme e poucos cruzamentos.

Um outro exemplo de conflito pode ser visto na Figura 2.16, onde garantir orientao uniforme das arestas implica em reduzir o nmero de simetrias.
Muitos conflitos tm sido relatados na literatura [Davidson and Harel, 1989] envolvendo critrios estticos como: mnimo nmero de cruzamentos, mnima rea do desenho, mnimo nmero de dobras das arestas, mximo nmero de simetrias, maior resoluo
angular, entre outros. A existncia de conflitos torna mais difcil a atividade de desenhar grafos. Em geral, procura-se resolver os conflitos buscando por solues de compromisso, as quais atendem de forma equilibrada os diversos critrios pr-determinados
[Davidson and Harel, 1989, Tunkelang, 1993].
Face complexidade dos problemas que envolvem a atividade de desenhar grafos,
justifica-se o uso de heursticas na produo de boas solues.
XXIV JAI

1285

Um objetivo de singular importncia na rea de Desenho de Grafos projetar


algoritmos flexveis, ou seja: algoritmos cuja incluso de novos critrios estticos ou cuja
modificao para que trabalhem com outra classe de grafos no implique em um grade
esforo de codificao.
A seguir, introduzimos algumas tcnicas referentes ao desenho de quatro classes
genricas de grafos, dando enfoque ao desenho de rvores, grafos gerais e de grafos direcionados. Esta escolha deve-se ao fato dessas classes serem alvo de intensa pesquisa na
rea.
Algumas tcnicas genricas para desenhar qualquer tipo de grafo so apresentadas
na ltima subseo.
2.5.3

Desenho de rvores

Historicamente, as rvores esto entre as primeiras classes estudadas em Desenho de Grafos, em funo da sua popularidade e da simplicidade de sua estrutura. As tcnicas para
desenhar rvores consideram dois casos distintos: desenho de rvores com raiz (rooted
trees) e desenho de rvores livres (free trees). Em ambos os casos, desejvel a obteno
de desenhos planares em linhas poligonais.
rvores com raiz
rvores com raiz geralmente representam hierarquias, tais como diagramas organizacionais, rvores de busca e registros de chamadas de sub-rotinas.
Entre os critrios estticos para desenhar esse tipo de rvore destacam-se:
distribuir os vrtices sobre nveis hierrquicos horizontais, de acordo com a sua
profundidade na rvore;
para rvores binrias, posicionar os filhos esquerdo e direito de cada vrtice, respectivamente, esquerda e direita do vrtice pai;
centralizar os pais sobre os seus filhos; e
minimizar a largura do desenho.
Um
dos
primeiros
trabalhos
nessa
rea
apareceu
em
[Wetherell and Shannon, 1979], onde Wetherell e Shannon apresentaram um algoritmo
para desenho de rvores binrias que satisfaz os trs primeiros critrios mencionados.
Posteriormente, Reingold e Tilford mostraram em [Reingold and Tilford, 1981]
que o algoritmo de Wetherell e Shannon poderia gerar desenhos muito mais largos do
que o necessrio e com algumas outras caractersticas estticas indesejveis. Eles apresentaram ento um novo algoritmo e incluram os seguintes critrios: mostrar simetrias e
desenhar sub-rvores isomorfas sempre do mesmo modo.
Embora o algoritmo de Reingold e Tilford obtenha resultados melhores do
que aqueles apresentados por Wetherell, ele no satisfaz obrigatoriamente o critrio de mnima largura. Um trabalho mais recente de Sopwit e Reingold em
[Supowit and Reingold, 1983] mostrou que a construo de um desenho de uma rvore
binria com largura mnima, tal que os vrtices pais estejam centralizados sobre seus filhos e que sub-rvores isomorfas sejam congruentes (mesmo ngulo descrito pelas arestas
XXIV JAI

1286

incidentes nos vrtices pais e nos filhos) um problema NP-completo quando os vrtices
tm coordenadas sobre uma grade. De outra forma, considerando o desenho sobre um espao contnuo, o problema pode ser aproximado em tempo polinomial atravs de tcnicas
de programao linear.
rvores livres
rvores livres so rvores que no possuem raiz. Uma maneira simples de se desenhar
esse tipo de estrutura consiste em escolher um vrtice como raiz e aplicar um dos algoritmos mencionados acima para construir uma representao hierrquica (em nveis) da
mesma. Em seguida, converte-se a representao de nveis para um desenho radial, onde
o vrtice raiz colocado no centro da figura e os demais vrtices so posicionados em
crculos concntricos de acordo com os seus nveis [Eades, 1992].
O padro grfico mais comum para as arestas em um desenho radial utilizar
linhas retas. Como critrio esttico, geralmente se deseja desenhar as arestas com comprimento uniforme e mostrar o mximo de simetrias possvel.
Eades em [Eades, 1992] apresenta estudos sobre desenho de rvores livres, destacando no apenas algoritmos para obter desenhos radiais, como tambm, a utilizao do
mtodo Springs [Eades, 1984, Kamada and Kawai, 1989]. O mtodo Springs ser descrito mais adiante.
2.5.4

Grafos planares

Um grafo dito planar se ele admite um desenho planar (sem cruzamento entre arestas).
A classe de grafos planares certamente a mais bem estudada na rea de Desenho
de Grafos devido a 2 fatores: a sua grande aplicao, principalmente, no projeto de circuitos VLSI, e devido ao fato de estar associada a muitos conceitos e problemas toricos
de fundamental importncia em Teoria dos Grafos.
Dentre as muitas formas grficas de se desenhar grafos planares bastante
comum produzir desenhos em linhas retas. Segundo resultados apresentados em
[Wagner, 1936, Fary, 1948, Stein, 1951], todo grafo planar pode ser desenhado sem cruzamentos utilizando-se esse padro.
Os algoritmos para construir desenhos de grafos planares em geral incluem os
seguintes passos:
1. teste de planaridade;
2. construo de uma representao planar;
3. utilizao da representao planar para produzir um desenho segundo algum padro grfico.
O teste de planaridade tem por objetivo verificar se o grafo a ser desenhado
de fato planar. A busca por um algoritmo que realizasse o teste de planaridade em
tempo linear foi um desafio de grande interesse, at ser conseguido por Hopcroft e Tarjan
[Hopcroft and Tarjan, 1974].
Em geral, os algoritmos que testam a planaridade podem ser modificados para
construir uma representao planar do grafo. Tal representao uma estrutura de dados
XXIV JAI

1287

que descreve as adjacncias entre as faces de um desenho planar, e pode ser utilizada para
obter um desenho final sem cruzamentos de arestas. Deste modo, um desenho de um
grafo planar pode ser gerado em tempo linear modificando-se certos algoritmos de teste
de planaridade.
Algumas convenes grficas para o desenho de grafos planares foram introduzidas pela rea de projetos de circuitos VLSI. Por exemplo, tornou-se comum desenhar os
grafos planares sobre uma grade de baixa resoluo, adotando-se um padro grfico ortogonal. Neste caso, alguns critrios estticos desejados incluem: minimizar o nmero de
dobras das arestas e a rea ocupada pelo desenho. Entretanto, o problema de minimizar
dobras NP-difcil [Garg and Tamassia, 1995].
Uma outra conveno motivada pelo projeto de circuitos VLSI o conceito de
representao de visibilidade, que consiste em representar os vrtices de um grafo por
segmentos horizontais e as arestas por segmentos verticais que interceptam apenas os
seus vrtices extremos.
Para os desenhos em linha reta, os critrios estticos mais utilizados incluem minimizar o comprimento das arestas e maximizar a resoluo angular. A resoluo angular de
um desenho em linha reta consiste no menor ngulo formado por duas arestas incidentes
em um mesmo vrtice.
Um dos problemas em aberto para desenho de grafos planares diz respeito ao
desenvolvimento de algoritmos simples para teste de planaridade em tempo linear. Todos
os algoritmos de teste de planaridade existentes so difceis de serem entendidos e exigem
muito esforo de implementao, o que limita o seu uso em sistemas prticos.
Apesar da dificuldade de se implementar o teste de planaridade, algumas tcnicas
de desenho de grafos baseiam-se no estudo de grafos planares, em funo da existncia de
algoritmos de desenho para essa classe que executam em tempo linear. A idia principal
converter um grafo no planar em um grafo planar, atravs de um processo chamado
de planarizao, e produzir um desenho planar utilizando-se um dos algoritmos conhecidos para tanto. A planarizao pode ser realizada atravs de algumas operaes como
a eliminao de vrtices, eliminao de arestas ou separao de vrtices. A eliminao
de arestas, em particular, consiste em remover um conjunto de arestas do grafo a fim de
torn-lo planar. Observe que encontrar o menor conjunto de arestas que devem ser eliminadas para se conseguir planaridade equivalente ao problema de computar o subgrafo
planar mximo, o qual NP-difcil [Garey and Johnson, 1979]. Existem, no entanto, algoritmos de tempo polinomial para encontrar um subgrafo planar maximal.
2.5.5

Grafos gerais

Tratamos, nesta seo, de grafos no-direcionados gerais, os quais abreviamos apenas por
grafos gerais. Esses so grafos para os quais no se tem muita informao acerca de sua
estrutura, alm do conhecimento de seus vrtices e arestas. Construir desenhos para essa
classe de grafos parece ser uma tarefa desafiadora, visto que no existe nenhuma regra
bem definida que indique onde posicionar os vrtices. Tal situao bem diferente daquela que caracteriza as rvores e os grafos direcionados em geral, onde os vrtices devem
ser colocados no desenho de forma que as arestas possuam uma orientao uniforme.
Apesar dessa aparente dificuldade, alguns critrios estticos bastante intuitivos
XXIV JAI

1288

tm sido propostos para desenhar grafos gerais como, por exemplo: mostrar muitas simetrias, distribuir os vrtices uniformemente e apresentar poucos cruzamentos entre arestas. Em geral, a satisfao destes critrios implica em desenhos que ajudam na compreenso do grafo. Devemos observar, contudo, que alguns critrios esto relacionados com problemas NP-difceis, tais como: identificar todas as simetrias apresentadas
por um desenho [Manning, 1991, Manning, 1990] e minimizar o nmero de cruzamentos
[Garey and Johnson, 1983].
Uma abordagem simples para desenhar grafos gerais consiste em transform-los
em uma outra classe de grafos e aplicar um algoritmo adequado mesma. possvel, por
exemplo, planarizar o grafo ou atribuir orientao s duas arestas de forma que ele mude
de classe [Di Battista et al., 1994]. No entanto, os desenhos produzidos atravs desse
processo geralmente apresentam caractersticas no desejadas, comuns classe para a
qual o grafo foi convertido.
De fato, a abordagem mais utilizada para desenhar grafos gerais baseia-se em
um sistema de foras que tenta descrever a relao existente entre os vrtices do grafo,
definida por suas arestas. Um dos trabalhos mais famosos nesse sentido mtodo Springs
proposto por Eades em [Eades, 1984]. Esse mtodo modela um grafo como um sistema
dinmico de molas no plano onde cada vrtice representado por uma partcula que exerce
uma fora de repulso sobre os demais vrtices. As arestas, por sua vez, so substitudas
por uma mola conectando dois vrtices (partculas). O mtodo funciona como segue: "
1. uma configurao inicial do sistema definida atribuindo-se aleatoriamente coordenadas no plano aos vrtices;
2. o vrtice mais crtico (que possui maior fora resultante) movido para uma
posio que minimiza a energia total do sistema9 ; os demais vrtices so mantidos
congelados na sua posio original. Esse passo repetido sucessivamente para
o prximo vrtice mais crtico, at que no haja mais vrtices que contribuam com
valores altos funo de energia.
O objetivo do mtodo encontrar um estado de baixa energia do sistema, o qual
est geralmente associado a um desenho de boa qualidade. Os desenhos gerados pelo
mtodo Springs costumam ter arestas com comprimento uniforme e apresentar muitas
simetrias. O mtodo, contudo, no trata o problema de minimizar o nmero de cruzamentos entre arestas e exige ajustes para que no caia em um mnimo local[Lin, 1992]. Uma
combinao interessante entre um algoritmo para desenho radial e o mtodo Springs
proposta por Eades em [Eades, 1992]. O algoritmo resultante produz desenhos com caractersticas simtricas sem cruzamentos em todos os casos testados.
Diversas variaes do mtodo Springs existem. A proposta de Kamada e Kawai,
por exemplo, [Kamada and Kawai, 1989] define um sistema de molas completo que utiliza uma mola para conectar cada par de vrtices do grafo. O comprimento e a constante elstica das molas dependem da distncia terica entre os seus vrtices. A energia
do sistema minimizada encontrando posies para os vrtices atravs do mtodo de
Newton-Raphson.
9

a energia total do sistema pode ser definida como sendo a soma do mdulo da fora resultante em cada
vrtice
XXIV JAI

1289

2.5.6

Grafos direcionados

Muitas estruturas hierrquicas como, por exemplo, redes PERT, diagramas de chamada de
subrotinas, organogramas de empresas e autmatos finitos so representados por grafos
direcionados. Um padro grfico comum para essa classe de grafos desenhar os vrtices
como retngulos ou crculos e as arestas como linhas poligonais com setas. O desenho
geralmente construdo sobre uma grade retangular, sendo os vrtices posicionados sobre
os pontos de interseo de uma linha com uma coluna.
Os principais critrios estticos para o desenho de grafos direcionados so:
apresentar orientao uniforme das arestas; por exemplo, mostrar todas as arestas
apontando para baixo (isso possvel se o grafo for acclico);
minimizar o nmero de cruzamento entre arestas;
minimizar o comprimento das arestas e desenh-las to retas quanto possvel; e
minimizar a rea do desenho.
A abordagem mais utilizada para desenhar grafos direcionados o mtodo de
Sugiyama [Sugiyama et al., 1981], o qual constri um desenho hierrquico em nveis,
semelhante ao que foi descrito para o caso de rvores com raiz. O mtodo consiste de
quatro passos:
1. Remoo de Ciclos este passo um pr-processamento necessrio apenas
quando o grafo possui ciclos. O objetivo reverter a orientao de algumas arestas
do grafo (ou remov-las completamente) de forma a torn-lo acclico.
2. Associao Nveis neste passo, os vrtices do grafo so associados a nveis,
de tal forma que as arestas ficam com uma orientao uniforme (apontando para
baixo). Quando uma aresta (u, v) cruza um ou mais nveis, ela subtituda por
um conjunto de arestas menores (u, n1 ),(n1 , n2 ), . . . (ni , ni+1 ),(nk , v), onde ni ,
para i = 1, 2 . . . k, so vrtices novos chamados de vrtices falsos. Os vrtices
falsos so colocados nos pontos de interseo da aresta antiga com os nveis. O
problema de minimizar a altura e possivelmente a largura do desenho tambm
considerado nesse passo atravs de uma escolha apropriada dos nveis a serem
associados aos vrtices.
3. Reduo de Cruzamentos nesse passo, os vrtices em cada nvel so reordenados de modo a reduzir o nmero de cruzamentos entre arestas. Sugiyama
apresenta uma heurstica para reduzir cruzamentos, denominada de Baricentro,
a qual tem sido utilizada em muitos algoritmos prticos para desenho de grafos
direcionados. O Baricentro consiste em colocar os vrtices de um nvel em sua
posio mdia (ou baricntrica) em relao a seus adjacentes no nvel imediatamente acima ou abaixo. Um algoritmo que implementa o Baricentro geralmente
executa como segue: a posio dos vrtices do nvel mais alto fixada e o Baricentro aplicado para os vrtices do prximo nvel (abaixo) tomando como base
os seus adjacentes acima. Essa operao repetida para os nveis seguintes at que
os vrtices no ltimo nvel mais baixo sejam colocados em sua posio baricntrica. Em seguida, o processo repetido iniciando no nvel mais baixo at o mais
alto. O Baricentro aplicado sucessivas vezes de cima para baixo e de baixo para
cima, at que no se consiga mais reduzir o nmero de cruzamentos entre arestas.
Uma heurstica semelhante ao Baricentro conhecida como Mediana e executa
XXIV JAI

1290

colocando vrtices na posio mdia entre os seus adjacentes mais esquerda e


mais direita .
4. Associao de Coordenada Horizontal nesse passo, a coordenada X final de
cada vrtice definida de tal modo que o desenho resultante apresente arestas
to retas quanto possvel, tenha poucas curvas nas arestas e no seja muito largo.
Isso realizado sem mudar a ordem dos vrtices nos nveis. Alm disso, todas
as arestas modificadas no Passo 1 so revertidas sua orientao original neste
passo.
O Mtodo de Sugiyama envolve vrios problemas Np-difceis) como, por exemplo, o problema de computar o menor conjunto de arestas a serem revertidas no Passo 1,
a fim de eliminar os ciclos do grafo, o qual NP-difcil) e conhecido na literatura como
Feedback Arc Set Problem [Garey and Johnson, 1979]. Minimizar o nmero de cruzamentos entre arestas, feito no Passo 2, tambm um problema NP-difcil, mesmo quando
considerada uma hierarquia com apenas dois nveis e mantendo-se fixa a ordem dos vrtices em um dos nveis [Garey and Johnson, 1983, Eades and Wormald, 1994]. Um outro
problema importante, tratado em parte nos Passos 1 e 2, consiste em gerar uma figura
que no seja nem muito larga nem comprida. Encontrar uma disposio hierrquica que
satisfaa de forma tima esse critrio NP-difcil [Eades, 1989].
2.5.7

Outras abordagens

Algumas tcnicas mais gerais e flexveis tm sido desenvolvidas para desenhar uma
grande variedade de classes de grafos e para tratar diversos critrios estticos simultaneamente.
Uma tcnica bem conhecida que oferece esses recursos o Simulated Annealing
de Davidson e Harel [Davidson and Harel, 1996].
Simulated Annealing (SA) um mtodo de otimizao iterativo, formulado inicialmente por Kirkpatrick et al [Kirkpatrick et al., 1983] e que se originou da Mecnica
Estatstica [Metropolis et al., 1953]. O mtodo tenta escapar de mnimos locais utilizando
operaes anlogas ao processo em que lquidos so esfriados at assumirem uma forma
cristalina, processo esse chamado de annealing.
A motivao por tras do mtodo segue da observao dos princpios que regulam
o processo annealing: se o esfriamento de um lquido for lento o suficiente, ento as
pequenas foras inicas dos seus tomos interagem e organizam a estrutura do lquido,
atingindo uma forma chamada de cristal, que est associada ao estado de mnima energia do sistema. Entretanto, se este esfriamento for demasiadamente rpido, o sistema
(lquido) assume uma configurao amorfa que representa mnimos locais.
Durante o annealing, o sistema obedece a distribuio de Boltzmann:
E

P (E) ' e kT ,
a qual define uma distribuio de probabilidades para estados de energia E, como uma
funo da temperatura T e da constante de Boltzmann k.
Metropolis e outros em [Metropolis et al., 1953] sugeriram um procedimento para
simular esse processo em uma dada temperatura atravs de uma seqncia de movimentos
XXIV JAI

1291

que mudam o estado do sistema. Novos estados so obtidos dentro da vizinhana do


estado corrente, pertubando-se uma pequena parcela do sistema. A regra bsica do procedimento que a probabilidade de passar de um estado com energia E1 para um novo
estado com energia E2 dada pela funo:
p = min{1, e

E2E1
kT

}.

Isto significa que o sistema sempre muda para o novo estado se E2 < E1 . Caso
contrrio, se E2 > E1 , o novo estado ser aceito com probabilidade p.
Um algoritmo para simular o annealing, proposto por Kirkpatrick e outros em
[Kirkpatrick et al., 1983], consiste em estabelecer um alto valor para a temperatura T e ir
diminuindo-o lentamente, enquanto se atinge um estado de equilbrio atravs da aplicao
sucessiva de pequenas perturbaes no sistema para cada valor de T . Os passos bsicos
de um algoritmo para Simulated Annealing so apresentados na Figura 2.19. Kirkpatrick
e outros mostraram que este processo pode ser aplicado para resolver problemas gerais de
otimizao.
1. Escolha uma configurao inicial e uma temperatura inicial T ;
2. Repita (comumente um nmero fixo de vezes)
(a) Escolha uma nova configurao 0 a partir da vizinhana de ;
(b) Sejam E e E 0 os valores da funo de custo (energia) de e 0 , respectivamente;
0
se Random < e(EE )/T ento faa 0 ;
3. Decremente a temperatura T ;
4. Se uma condio de parada for satisfeita, ento pare. Caso contrrio, volte ao
passo 2.
Figura 2.19: Algoritmo para Simulated Annealing.

Davidson e Harel em [Davidson and Harel, 1989] fizeram uso de Simulated Annealing para desenhar grafos gerais. Eles definiram uma funo energtica de custo associada aos estados do sistema, que representa uma lista de critrios estticos como: distribuir
uniformemente os vrtices sobre uma regio de desenho, minimizar o comprimento das
arestas, minimizar o nmero de cruzamentos e maximizar a distncia entre vrtices e
arestas. A funo energtica total de um estado referente a um grafo G = (V, A) tem a
seguinte forma:
E() = 1

X
i,jV

1/dij 2 + 2

X
iV,k=1,2,3,4

1/diBk 2 + 3

X
rA

lr 2 + 4 X + 5

1/dir

iV,rA

onde: dij a distncia entre os vrtices i e j, diBk a distncia entre o vrtice i e


a borda k da regio retangular do desenho, lr o comprimento da aresta r, X o nmero
total de cruzamentos, dir a distncia entre o vrtice i e a aresta r (com r no incidente a
i), e 1 , 2 , . . . , 5 so constantes que ponderam as componentes da funo energtica. O
peso de cada componente de energia determina a qualidade esttica dos desenhos finais
produzidos.
XXIV JAI

1292

Essa proposta utilizando Simulated Annealing considerada uma das abordagens


existentes mais flexveis para desenho de grafos, uma vez que novos critrios estticos
pode ser facilmente includos na funo de energia do sistema.
Em contrapartida, o Simulated Annealing reconhecidamente lento
[Aarts and Korst, 1989] e exige inmeros testes e ajustes minuciosos dos seus parmetros at que seja capaz de produzir bons resultados. Alguns parmetros que levam
tempo para serem configurados corretamente incluem: os pesos para os critrios estticos,
a taxa de decrscimo da temperatura e a funo que define a vizinhana entre estados do
sistema.
Tunkenlang [Tunkelang, 1993] apresenta uma outra abordagem prtica para desenho de grafos gerais que faz uso de uma funo energtica semelhante quela do Simulated Annealing de Davidson e Harel. A novidade nesta abordagem que uma srie
de otimizaes so implementadas a fim de agilizar a atividade de desenho. A principal
otimizao consiste em gerar o desenho de forma incremental, adicionando-se um vrtice
por vez figura parcialmente construda. A cada incluso, realiza-se uma seqncia de
passos iterativos para minimizar a energia do sistema, reorganizando a posio dos vrtices. A proposta de Tunkelang caracteriza-se por implementar otimizao do processo de
desenho, permitindo construir figuras rapidamente.
Uma outra abordagem para desenhar grafos gerais faz uso de Algoritmos Genticos. Os Algoritmos Gneticos [Goldberg, 1989] so processos de busca baseados nas leis
da seleo natural e da gentica, e consistem de trs operaes bsicas: seleo de uma
subpopulao de cromossomos a partir de uma populao inicial (os cromossomos simbolizam solues do problema); aplicao de operaes genticas de permutao e mutao
sobre os cromossomos selecionados com o objetivo de gerar um conjunto de cromossomos filhos; e substituio dos cromossomos pais pelos filhos com base em alguma regra
de aptido.
O uso de Algoritmos Genticos para desenho de grafos [Branke et al., 1997,
Utech et al., 1998, do Nascimento and Eades, 2002] possuem algumas vantagens como a
possibilidade de se obter uma populao de desenhos diferentes e o potencial de se explorar paralelismo. Entretanto, bastente difcil codificar heursticas inteligentes nesta
abordagem, bem como ajustar o algoritmo para convergir para boas solues. Os algoritmos genticos tambm sofre do mesmo problema de tempo elevado de processamento
apresentado pelo Simulated Annealing.

2.6

Foco+Contexto

O conceito central das tcnicas Foco+Contexto apresentar uma viso geral dos dados a
serem visualizados, mas destacando uma regio de interesse (foco) atravs de uma ampliao suave da mesma. Geralmente, procura-se ampliar a regio de interesse, enquanto se
compacta o restante da imagem (do contexto). Como essa tcnica emprega uma distoro
da imagem original, ela demanda maior tempo para ser aprendida.
A seguir analisamos as principais variaes da tcnica de Foco+Contexto, entre
elas Fish-eye e Browser Hiperblico.
XXIV JAI

1293

2.6.1

Fish-eye

A tcnica de visualizao Fish-eye, como o prprio nome diz, produz um efeito semelhante ao de um olho de peixe ou de uma lente de aumento. Ela permite uma viso mais
detalhada de uma regio de interesse sem haver perda de seus arredores, atravs de uma
taxa maior de ampliao no centro da regio de interesse e decrescente no sentido da
periferia da imagem.
Apesar da idia do Fish-eye ser intuitiva para imagens 2D, a tcnica muito mais
geral e foi primeiramente proposta por Furnas [Furnas, 1981] como uma abordagem de
visualizao para texto.
Furnas define uma Funo de Grau de Interesse (DOI) a partir de trs conceitos:
ponto de foco (ou simplesmente foco) o dado sobre qual o observador est concentrando sua ateno no momento, sendo representado pelo smbolo de um ponto
(.);
distncia do ponto do foco para qualquer outro lugar x da estrutura; isso simbolizado por D(., x), com D(., .) = 0; e
nvel de detalhe, de importncia ou de resoluo de um ponto x, representado
por LOD(x), uma medida da importncia intrnseca do ponto x em relao
estrutura global. O nvel de detalhe geralmente um nmero negativo, de forma
que, quanto maior o detalhe, menor o valor de LOD.
Esses conceitos so ento combinados para compor a funo DOI, a qual representa o interesse de um ponto x aparecer ou no na visualizao. Em geral, a funo
de grau de interesse de x definida como: DOI(x|.) = F (LOD(x), D(., x)), onde F
uma funo monotonicamente crescente em seu primeiro argumento e decrescente no
segundo. Dessa forma, o grau de interesse cresce com o LOD de x e decresce com a sua
distncia em relao ao foco.
Para se criar uma viso Fish-eye utilizando tais definies, o ponto x mostrado
se, e somente se, seu grau de interesse (DOI) maior que um determinado limiar k. Note
que DOI usualmente negativa e, portanto, k tambm deve ser negativo.
Furnas exemplificou essa idia para um caso prtico de visualizao de cdigos de
programas, onde o . se refere linha atual do programa de interesse do usurio, D(., x)
a distncia dessa linha at uma outra linha x do texto e LOD(x) se refere ao nvel de
detalhe inerente linha x (isto , identao ou profundidade implcita dessa linha como,
por exemplo, se ela est dentro de vrios blocos de comando encadeados. Quanto maior
a profundidade de x, menor valor de LOD(x)).
A Figura 2.20 ilustra a abordagem de Furnas. Um trecho padro de um cdigo
em C apresentado esquerda e uma viso Fish-eye do mesmo programa pode ser vista
direita. As convenes adotadas so para representar o ponto de foco e ... para
indicar linhas que foram omitidas quando o seu valor DOI foi abaixo do limiar. A figura
mostra, por exemplo que as linhas 28 a 37, 42, 44, 45 e 48 a 56 foram suprimidas, enquanto as linhas mais importantes prximas ao foco (linha 39), inclusive o prprio foco,
so apresentadas.
Outro exemplo de utilizao dessa tcnica para navegao em rvores de diretrios. Apenas movimentando o mouse sobre uma estrutura de rvores, sem a necessidade
XXIV JAI

1294

28
t[0] = (t[0] + 10000)
29
x[0];
30
for (i=1; i < k; i++){
31
t[i] = (t[i] + 10000)
32
x[i]
33
(1 t[i1]/10000);
34
t[i1] %= 10000;
35
}
36
t[k1] %= 10000;
37
break;
38 case e:
for (i=0; i<k; i++) t[i] = x[i];
>> 39
40
break;
41 case q:
42
exit(0);
43 default:
44
noprint = 1;
45
break;
46 }
47 if (!noprint) {
48 for (i=k1; t[i] <= 0 && i > 0; i);
49 printf("%d",t[i]);
50 if (i > 0) {

1 # define DIG 40
2 # include <stdio.h>
... 4 main()
5{
6
int c, i, x[DIG/4], t[DIG/4], k = DIG/4, noprint = 0;;
while ((c=getchar()) ! = EOF) {
... 8
9
if (c >= 0 && c <= 9){
} else {
... 16
17
switch (c) {
18
case + :
case :
... 27
case e :
... 38
for (i=0; i < k; i++) t[i] = x[i];
>> 39
40
break;
41
case q:
default:
... 43
}
... 46
47
if (!noprint){
}
... 57
58
}
59
noprint = 0;
60 }
61 }

Figura 2.20: Fish-eye aplicado visualizao de cdigo-fonte de um programa


em C. Adaptado de [Furnas, 1981]

de cliques do mouse, o ponto de foco pode ser modificado e as subrvores de diretrios


expandidas ou compactadas de acordo com o seu grau de interesse.
A tcnica Fish-eye tem sido mais empregada, contudo, para a visualizao de
imagens. A Figura 2.21 mostra um exemplo de uma abordagem derivada do Fish-eye,
chamada de Fish-eye menu10 . A imagem esquerda uma abordagem tradicional de
menu, onde uma barra de rolagem tem que ser utilizada para permitir acesso a todos
os tens do menu. direita, vemos uma visualizao que emprega o conceito de Fisheye. Nesta imagem, todos os itens so apresentados simultaneamente, sendo permitida a
movimentao do mouse sobre o menu, o que causa a ampliao das opes prximas ao
ponto de foco.

Figura 2.21: Fish-eye menu.

2.6.2

Browser Hiperblico

O Browser Hiperblico combina Foco+Contexto com desenho radial de rvores para auxiliar na explorao de grandes hierarquias. Um dos principais trabalhos relacionados
10

A figura foi obtida de http://www.samuelwan.com/downloads/com.samuelwan.


eidt/fisheyemenu/FisheyeMenuDemo.html.
XXIV JAI

1295

com essa tcnica a proposta de Lamping e Rao [Lamping and Rao, 1996], na qual a
estrutura de uma rvore mapeada em uma representao no plano hiperblico a ser projetado na tela. Uma propriedade conveniente desse plano que a circunferncia de um
crculo cujo centro coincide com o centro da tela cresce exponencialmente com o seu raio.
Isso significa que h mais espao disponvel para se compactar informaes na medida
em que se aproxima da periferia do desenho.
Com essa representao, o Browser Hiperblico consegue disponibilizar cerca de
dez vezes mais vrtices de uma rvore do que utilizando uma visualizao no plano cartesiano.
A navegao em um Browser Hiperblico tambm mais efetiva. Mudanas de
foco podem ser realizadas atravs de movimentos simples do mouse objetivando selecionar vrtices de maior interesse. Isso move o vrtice selecionado para o centro da tela,
ocasionando uma compactao das informaes que esto distantes do mesmo. Alm
disso, o sistema realiza transies gradativas e suaves da mudana do ponto de foco, a fim
de preservar o mapa mental construdo para aquela estrutura.
Uma ilustrao de Browser Hiperblico11 apresentada na Figura 2.22.

Figura 2.22: Browser Hiperblico. Inxight Software, Inc.

2.6.3

Perspective Wall e Table Lens

Existem outras tcnicas de visualizao baseadas em Foco+Contexto. Dentre elas, podemos citar as tcnicas Perspective Wall e Table Lens.
A tcnica Perspective Wall [Mackinlay et al., 1991] permite a visualizao de muitas informaes lineares em um retngulo horizontal, o qual dobrado para trs nos limites direita e esquerda da regio de interesse, fornecendo, assim, uma perspectiva 3D
do resultado. Um exemplo dessa tcnica pode ser visto em http://escience.anu.
edu.au/lecture/cg/Import/zb/wall/wall.gif.
11

Ilustrao obtida em http://www.flashkit.com/search/sitemap/index.shtml.

XXIV JAI

1296

J a tcnica Table Lens [Rao and Card, 1994] uma forma efetiva para o entendimento de dados numricos e categricos multidimensionais. Essa tcnica permite a
visualizao de uma tabela onde os dados de interesse aparecem expandidos e os demais
itens, de forma compactada. As linhas da tabela so vistas como linhas de pixels. A
tcnica possibilita interao do usurio para focalizar linhas ou colunas, o que causa a
ampliao das mesmas enquanto mantm compactado o contexto ao seu redor.
A Figura 2.23 ilustra a tcnica Table Lens12 .

Figura 2.23: Table Lens.

2.7

Coordenadas Paralelas

A
tcnica
Coordenadas
Paralelas
foi
proposta
por
Inselberg
[Inselberg and Dimsdale, 1990, Inselberg, 1997].
Essa tcnica, conforme mencionado na Seo 2.4, mapeia um espao n-dimensional em uma estrutura bidimensional
que usa n eixos paralelos verticais eqidistantes, denominados coordenadas.
Os eixos verticais representam as dimenses ou atributos dos dados. Uma linha
representando cada item de dado conecta os eixos nos seus respectivos valores, o que
permite a observao de padres.
A Figura 2.24, gerada a partir da ferramenta VisEd [Xavier, 2004], mostra um
exemplo dessa tcnica. A mencionada ferramenta d suporte ao ensino distncia via
Web, permitindo a visualizao de dados sobre a participao e o desempenho de alunos
em um determinado curso. Nesse exemplo, os eixos representam os seguintes atributos
dos alunos: nome, idade, bairro onde mora, nmero de acessos ao chat do curso e nota.
Foi selecionada, pelo usurio da ferramenta, a faixa de variao de valores entre 80 e
100 no eixo do atributo Nota, o que ocasionou o destaque das linhas correspondentes aos
alunos que tiraram notas neste intervalo, possibilitando, assim, a visualizao dos seus
respectivos valores em outros eixos.
As formas de interao possibilitadas pela tcnica de Coordenadas Paralelas so:
12

Imagem obtida utilizando o applet da Avizsoft em http://www.avizsoft.com/contents/


table-lens-demo.htm.
XXIV JAI

1297

incluso ou remoo de eixos (coordenadas);


seleo de um intervalo de interesse em um eixo. Nesse caso, as linhas que passam
pelo intervalo selecionado so destacadas com uma cor mais intensa, enquanto as
demais tm a sua cor atenuada, conforme pode ser visto na Figura 2.24. Esse processo simboliza uma filtragem dos dados de acordo com um determinado critrio;
seleo de intervalos em duas ou mais coordenadas simultaneamente. Tal processo permite a criao de filtros complexos para os dados, definindo operaes
como unio, interseco ou complemento entre os conjuntos filtrados de cada coordenada. Por exemplo, na Figura 2.24 poderamos definir uma consulta para evidenciar os alunos com idade entre 22 e 28 anos e que residam nos bairros Sudoeste
e Aeroporto.

Figura 2.24: Exemplo de visualizao usando a tcnica Coordenadas Paralelas.


Figura gerada pela Ferramenta VisEd [Xavier, 2004].

De um modo geral, Coordenadas Paralelas so adequadas para minerao de dados


com vrias dimenses, pois permitem transformar a busca por relaes entre variveis
de um problema em um processo mais intuitivo de reconhecimento de padres 2D. A
tcnica enfatiza, principalmente, relaes entre eixos adjacentes e conjuntos de dados que
possuem padres similares.
Um ponto a ser observado que podemos realizar a normalizao do intervalo
de valores de cada eixo de maneira individual ou em grupo, objetivando realar padres
de comportamento. Cada uma dessas abordagens causa resultados diferenciados. As
Figuras 2.25 e 2.26 trazem um exemplo onde ocorreu a normalizao dos eixos individualmente (atravs do maior valor de cada eixo) e a normalizao em grupo (atravs
do maior valor presente em todos os eixos), respectivamente. Os dados utilizados esto
XXIV JAI

1298

relacionados com a quantidade de atividades acadmicas realizadas por professores de


uma determinada universidade. Normalizando os eixos individualmente, pode acontecer
o caso em que h uma variao de valores muito grande em um eixo e em outro no.
Entretanto, todos eles estaro normalizados em um intervalo entre 0 e 1, por exemplo,
podendo mascarar padres de comportamento. No segundo caso, os dados so melhor
evidenciados,
vistoCoordinates
que Visualization
considerado
maior valor dentre os valores presentes em todos
XLSTAT 7.5.2 - Parallel
- 27/05/05 ato17:15:40
Data: workbook = Coordenadas.xls / sheet = DADOS / range = $C$3:$AA$50 / 48 rows and 25 columns
os eixos.
values
possvel observar, nesse caso, algumas tendncias nos dados de maneira mais
No missing
clara. Note que essa normalizao em grupo somente pode ser realizada se os eixos forem
quantitativos e tiverem a mesma unidade de medida.
Parallel Coordinates Visualization
100,00%

75,00%

50,00%

25,00%

0,00%

XLSTAT 7.5.2 - Parallel Coordinates Visualization - 27/05/05 at 17:16:22


Data: workbook = Coordenadas.xls / sheet = DADOS / range = $C$3:$AA$50 / 48 rows and 25 columns
No missing values

Figura 2.25: Exemplo de visualizao usando a tcnica Coordenadas Paralelas


com normalizao individual por eixo. Figura gerada utilizando a
ferramenta XLSTAT (http://www.xlstat.com/ ).
Parallel Coordinates Visualization

40
35
30
25
20
15
10
5
0

Figura 2.26: Exemplo de visualizao usando a tcnica Coordenadas Paralelas


com normalizao dos eixos em grupo. Figura gerada utilizando a
ferramenta XLSTAT.

Alguns outros parmetros tambm devem ser configurados nessa tcnica para aumentar a sua efetividade. Entre eles, destacamos a ordem com que as coordenadas so
apresentadas, o que pode levar a mais ou menos cruzamentos entre linhas. Normalmente,
essa ordem sugerida pelos prprios atributos dos dados.
Vrios trabalhos tm sido desenvolvidos no sentido de estender a tcnica bsica
de Coordenadas Paralelas [Artero et al., 2004], o que mostra que, apesar de simples, as
formas de utilizao dessa abordagem ainda no se esgotaram.

2.8

Glyphs

Outra classe de tcnicas na rea de Visualizao de Informaes est relacionada com o


uso de Glyphs, tambm chamados de cones. Assim como as Coordenadas Paralelas, os
XXIV JAI

1299

cones tambm so utilizados para a visualizao de dados multidimensionais e podem ser


compostos por atributos geomtricos, tais como forma, tamanho, orientao, posio ou
direo, e atributos de aparncia, como cor, textura e transparncia. Cada cone pode ser
associado a um dado diferente, possibilitando, assim, uma visualizao rpida e compacta
de vrios cones simultaneamente, representando, dessa forma, o domnio de dados.
Um dos primeiros trabalhos nesse tema foi apresentado por Chernoff
[Chernoff, 1973], onde os atributos visuais dos cones so explorados de uma forma bastante particular. Chernoff observou que os seres humanos so muito sensveis a uma
grande variedade de expresses faciais. Ele ento sugeriu a utilizao de cones representando faces, onde algumas caractersticas como o tamanho dos olhos, a altura da sobrancelha e a forma da boca pudessem ser associados a cada atributo de dado. Chernoff
aplicou sua tcnica para estudar exemplos geolgicos, com cada face cobrindo dezoito
atributos. Sua tcnica ficou conhecida como Faces de Chernoff.
A Figura 2.27 apresenta uma visualizao baseada nas Faces de Chernoff, gerada
novamente pela ferramenta VisEd. Os dados de alunos como sexo, quantidade de acesso
a um curso e nota foram mapeados em atributos visuais de um rosto. Nesse caso, o mapeamento visual, realizado pelo usurio da ferramenta, consistiu em apresentar o nmero de
acessos ao site do curso como a quantidade de cabelo sobre o rosto, a nota do aluno como
a inclinao da boca (triste, srio ou sorrindo) e o sexo do aluno como a cor da face. Essas
associaes so totalmente flexveis, podendo ser modificadas dinamicamente atravs de
uma seleo simples para cada atributo. Alm disso, possvel ordenar as faces com base
em algum atributo dos dados, buscando enfatizar um determinado padro. Os cones da
Figura 2.27, por exemplo, foram classificados por ordem decrescente de notas dos alunos.
Atravs da anlise dessa imagem, podemos verificar que os alunos que obtiveram notas
mais baixas (faces da ltima linha da figura) tambm acessaram pouco o site do curso
(quantidade menor de cabelos).

Figura 2.27: Visualizao de dados de alunos utilizando Faces de Chernoff. Imagem gerada pela ferramenta VisEd [Xavier, 2004].

A quantidade de cones que podem ser apresentados ao mesmo tempo em uma


visualizao baseada em Glyphs de maneira efetiva depende, principalmente, do tamanho
da tela e do formato dos cones. Em geral, existe um ponto de equilbrio entre se mostrar
XXIV JAI

1300

muitos dados e se apresentar cones com muitos detalhes (atributos). Se vrios cones
tm que ser apresentados simultaneamente, ento o tamanho dos mesmos precisa ser reduzido, o que impede a percepo de algumas caractersticas sutis como, por exemplo,
a inclinao da sobrancelha de uma face. Tal fato leva ao comprometimento da efetividade da visualizao. Por outro lado, se os cones tiverem muitos detalhes, ento mais
espao na tela ser necessrio para se desenhar os mesmos, o que reduz a quantidade cones que podem ser mostrados ao mesmo tempo. A escolha do tamanho ideal dos cones
uma deciso que pode ser deixada para o prprio usurio, atravs da implementao de
ferramentas interativas de zoom.
As principais formas de interao com uma visualizao baseada em Glyphs so:
modificao dinmica da associao dos atributos dos dados aos atributos visuais
dos cones;
alterao do tamanho dos cones, objetivando controlar a quantidade total de cones a serem visualizados simultaneamente na tela;
ordenao dos cones de acordo com atributos desejados; e
acesso a informaes mais detalhadas sobre os dados relacionados com um cone
atravs de um clique sobre o mesmo.
Alm de permitir a visualizao de vrios dados simultaneamente, abordagens
usando Glyphs so bastante motivadoras. Entretanto, esse tipo de tcnica exige um tempo
maior para treinamento do usurio, visto que preciso habituar-se a interpretar cada atributo visual do cone de acordo com o mapeamento visual adotado.

Figura 2.28: Visualizao de dados usando Starplots.

Uma tcnica de visualizao que combina Glyphs com Coordenadas Paralelas a


Starplot [Lee et al., 2003], tambm voltada para a visualizao de dados multidimensionais. Na Starplot, os eixos irradiam em forma de estrela a partir de um ponto de origem
comum. Essa tcnica ilustrada na Figura 2.28 para demonstrar os mesmos dados apresentados nas Figuras 2.25 e 2.26, isto , para visualizar a quantidade de atividades acadmicas de um grupo de professores de uma universidade. Cada cone-estrela representa
XXIV JAI

1301

um professor. As pontas das estrelas so os tipos de atividades acadmicas. bem visvel


agora que alguns professores produzem mais do que outros em diversas atividades.

2.9

Desenvolvimento de novas visualizaes

A formao de profissionais capacitados a atuar na rea de Visualizao de Informaes


envolve mais do que simplesmente estudar algumas tcnicas de visualizao. preciso
tambm conhecer uma metodologia para se utilizar tais tcnicas e para desenvolver novas
visualizaes efetivas, ter acesso a recursos de hardware e software adequados, e possuir
capacidades e habilidades que so necessrias para se trabalhar nessa rea.
Na Seo 2.2, apresentamos um modelo de referncia que divide o processo de
visualizao em uma seqncia de trs etapas menores. A idia geral do modelo intuitiva
e coerente e pode ser utilizada para se abstrair uma metodologia que auxilie na aplicao
de tcnicas de Visualizao de Informaes. Desenvolvemos, assim, uma metodologia
para se utilizar tcnicas j existentes ou para se projetar novas visualizaes interativas
para diversos problemas prticos. Nossa metodologia composta de cinco passos:
1. Estudar o problema e os dados a serem visualizados Apesar de muitas tcnicas de visualizao terem uma aplicao geral, no fundo elas somente ganham importncia quando so considerados os problemas reais que podem ser resolvidos
por meio das mesmas. A primeira etapa na aplicao de tcnicas de visualizaes
, portanto, estudar o problema alvo a ser tratado. Essa etapa deve ser realizada,
preferencialmente, em conjunto com os especialistas no problema e com os futuros usurios da visualizao. Uma das tarefas nesse passo elaborar uma lista
de perguntas a serem respondidas a partir da base de dados disponvel. Deve ser
feita, tambm, uma anlise dessa base para se ter uma idia do seu tamanho e complexidade. Nesse sentido, importante anotar a quantidade de dados na base, a
dimenso (quantidade de atributos) desses dados e as categorias (nominal, ordinal
e quantitativo) dos seus atributos. Uma outra tarefa de fundamental importncia
consiste em identificar relaes entre os atributos dos dados e registrar padres
que j podem ser percebidos nos mesmos. O resultado final do passo uma lista
de perguntas, um subconjunto da base de dados que seja relevante para o problema
a ser resolvido e uma descrio detalhada dos elementos desse conjunto.
2. Construir Visualizaes O trabalho nesse passo elaborar uma ou mais visualizaes para o problema em estudo. Duas abordagens podem ser utilizadas
para tanto: escolher uma tcnica geral de visualizao de informaes ou desenvolver uma visualizao especfica para o problema. A escolha de tcnicas j
existentes deve ser norteada pelas perguntas e pelas caractersticas da base de dados levantadas no passo anterior. Algumas tcnicas, como foi discutido em outras
sees deste trabalho, so mais adequadas para a representao de relaes entre
os dados (como desenho de grafos), enquanto outras so apropriadas para mostrar
dados com muitos atributos (por exemplo, tcnicas para visualizao de dados
multi-dimensionais como Coordenadas Paralelas). Uma vez escolhida a tcnica,
deve-se realizar o mapeamento dos dados para as estruturas visuais j definidas
na visualizao. Se houver interesse, contudo, em construir uma nova visualizao que seja especfica para o problema, ento o trabalho ser mais complicado e
XXIV JAI

1302

poder exigir muita criatividade. Isso porque ser necessrio definir um substrato
visual, escolher marcas e propriedades visuais das marcas para serem colocadas
no substrato e definir um mapeamento visual para os dados que seja expressivo e
efetivo. Apesar dessa dificuldade, uma ajuda pode ser conseguida com os especialistas na rea, observando a forma tradicional como eles atualmente visualizam
o problema. Em alguns casos, visualizaes tradicionais em papel so muito boas
e podem ser implementadas sem grandes dificuldades dentro de uma aplicao
interativa no computador.
3. Definir mecanismos de interao visualizaes podem ser utilizadas como
canais no apenas para transmitir dados mas tambm para receber comandos
do usurio. Neste passo, alguns mecanismos de interao com as visualizaes
construdas anteriormente devem ser especificados de modo a ampliar a percepo de informaes relacionadas aos dados. A interao pode ser no sentido de
controlar a quantidade de dados na tela, o que determina a expressividade da visualizao, ou de mudar a forma como esses dados so apresentados visualmente,
afetando assim a sua efetividade. O modelo de referncia da Figura 2.6 mostra
como o processo de visualizao pode ser controlado pelo usurio em cada uma
de suas etapas. Algumas formas de interao com visualizaes so: filtragem de
dados para serem apresentados, reassociao (mapeamento dinmico) dos dados
a estruturas visuais e ajuste da imagem final por meio de operaes de navegao
espacial e de ajuste de escala.
4. Implementar um sistema prottipo este passo prev o desenvolvimento de
um sistema prottipo que implemente as visualizaes e as formas de interao
especificadas nas fases anteriores. importante que o prottipo seja altamente
interativo, a fim de permitir ao usurio altenar facilmente entre duas ou mais visualizaes ou entre configuraes distintas de uma mesma visualizao, a fim de
testar e comparar formas diferentes de se visualizar a base de dados.
5. Avaliar as visualizaes nenhuma visualizao pode ser consideradas til at
que tenha sido avaliada em termos de sua expressividade e efetividade. Neste
ltimo passo da metodologia, o sistema prottipo deve ser utilizado para avaliar as visualizaes e os mecanismos de interao. Duas abordagens gerais da
rea de Interao Homem-Computador [Shneiderman, 2004] podem ser utilizadas para tanto: avaliaes informais com usurios especialistas e experimentos
controlados. Nas avaliaes informais, um sistema apresentado para um grupo
de usurios, os quais opinam sobre as caractersticas da interface e o funcionamento da aplicao. Um exemplo desse tipo de estudo a Avaliao Heurstica
[Nielsen, 1993], onde um grupo de trs a cinco usurios especialistas no domno
do problema avaliam o sistema segundo uma lista de princpios de usabilidade.
Essa forma de avaliao pode ser utilizada em Visualizao de Informaes para
encontrar problemas graves, tais como omisso de dados importantes, mapeamento visual no intutivo ou sobrecarregado e dificuldades de se interagir com a
imagem. J os experimentos controlados seguem a mesma regra adotada em estudos com seres humanos na rea de Psicologia. Esses estudos envolvem as seguintes atividades: (1) definio de uma hiptese a ser testada; (2) planejamento de
um experimento cujas variveis de configurao possam ser bem controladas, (3)
realizao do experimento planejado com uma quantidade significativa de pessoas
XXIV JAI

1303

e registro simultneo das atividades e dos resultados obtidos pelos participantes;


e (4) anlise estatstica das atividades e dos resultados obtidos visando comprovar
ou refutar a hiptese. Experimentos controlados podem ser utilizados para verificar se usurios percebem mais informaes importantes em uma visualizao do
que em outra, ou se essa percepo mais rpida ou lenta. Uma outra abordagem
para avaliar visualizaes de informao que est se tornando cada vez mais comum a definio e a utilizao de mtricas para quantificar aspectos relacionados
com a expressividade e a efetividade de imagens interativas. Brath [Brath, 1997],
por exemplo, compara visualizaes em 3D com base em um sistema de pontuao que considera a quantidade e a densidade dos dados mostrados na tela, o
nmero de dimenses dos dados e a percentagem de ocluso dos mesmos, entre
outras mtricas. Independente da abordagem utilizada, a fase de avaliao deve
comprovar se as visualizaes propostas ajudam ou no a responder as perguntas
levantadas no primeiro passo. Deve-se ter o cuidado, no entanto, para garantir
que a avaliao seja das visualizaes e no do prottipo em si. Note que um
prottipo lento e com falhas pode influenciar negativamente na avaliao de uma
visualizao.
A metodologia descrita acima orientada a um problema real. Seu objetivo maior
ajudar na construo de visualizaes que auxiliem um usurio a encontrar solues para
um problema (respostas para perguntas) e no aperfeioar uma tcnica de visualizao j
existente; muito embora isso possa ocorrer durante a execuo do processo.
Alm do conhecimento dessa metodologia, os profissionais que desejem atuar na
rea de Visualizao de Informaes precisam ter domnio de uma linguagem de programao com suporte construo de interfaces grficas (como Java ou C/C++ com alguma
GUI), timos conhecimentos de estruturas de dados avanadas e de algoritmos, conhecimento de OpenGL e de XML e de conceitos e tcnicas de avaliao de usabilidade da
rea de Interao Homem-Computador.
Habilidades subjetivas como criatividade, curiosidade e receptividade so tambm
fatores que podem contribuir para uma boa atuao na rea.
Os recursos de hardware necessrios para se desenvolver uma grande maioria das
visualizaes de informao esto ao alcance dos centros de pesquisa mais modestos,
sendo recomendado ter um equipamento com, pelo menos, as seguintes configuraes:
computador Pentium III-IV,
memria RAM igual ou superior a 512MB e disco rgido de pelo menos 40GB,
placa de vdeo com 128Mb de memria e com suporte a OpenGL e dois monitores,
monitor de 17"ou maior, sendo o ideal utilizar dois monitores grandes simultaneamente,
scanner e impressora colorida,
gravador de CD ou de DVD,
cmera filmadora, vdeo cassete e TV (para filmar experimentos com usurios), e
culos para visualizao de imagens em 3D.
Vrios pacotes de software podem ajudar os iniciantes a obterem suas primeiras
visualizaes, como por exemplo:
Graphviz programa de cdigo aberto para desenho de grafos desenvolvido na
AT&T (http://www.graphviz.org/ ).
XXIV JAI

1304

JGraph biblioteca livre de classes em Java para representao e desenho de grafos (http://www.jgraph.com/, sourceforge.net/projects/jgraph/ ).
JGraphT outra biblioteca livre de classes em Java para desenho de grafos
(http://jgrapht.sourceforge.net/ ).
Hypergraph pacote para visualizao de grafos em um browser hiperblico
(http://sourceforge.net/projects/hypergraph/ ).
WilmaScope programa aberto para visualizao de grafos em 3D
(http://www.wilmascope.org/ ).
XmdvTool programa aberto para visualizar dados multidimensionais
(http://davis.wpi.edu/ xmdv/ ).
OpenDX - ambiente aberto para visualizao cientfica desenvolvido pela IBM
(http://www.research.ibm.com/dx/ ).
Tom Sawyer Software biblioteca comercial de rotinas para desenho de grafos
(www.tomsawyer.com/ ).
Por fim, alguns sites na Internet trazem idias interessantes de visualizao que
podem motivar o desenvolvimento de outras formas no tradicionais de se perceber e de
integir com dados. Entre eles, citamos:
O TouchGraph (http://www.touchgraph.com) contm um sistema interativo para
visualizao de estruturas de pginas Web que utiliza desenho de grafos.
O site da Sofake sobre Web Design (http://www.sofake.com/ ) um bom exemplo
de interao em uma pgina web. A pgina explora zoom de uma forma contnua,
alm de tcnicas de visualizao e de interao em mltiplos nveis.
O site da LivePlasmaMusic (http://www.musicplasma.com) permite consultar msicas, filmes e artistas. O resultado mostrado atravs de um desenho de grafo
interativo.
O KartOO (http://www.kartoo.com/ um site de pesquisa de informaes na Web
que apresenta seus resultados na forma de mapas interativos, utilizando a tcnica
de Landscape.
O News Map (http://www.marumushi.com/apps/newsmap/newsmap.cfm) um
site para visualizao de notcia que utiliza a tcnica de TreeMap. O sistema
permite filtrar notcias por data, assunto e pas de publicao.

2.10

Tpicos adicionais e problemas em aberto

Esta seo discute diversos tpicos adicionais de interesse para a rea de Visualizao de
Informaes.
As tcnicas de visualizao que apresentamos at agora esto voltadas para uso
em um computador convencional. Contudo, com a popularizao dos celulares e dos Assistentes Pessoais de Dados (como os Palms e os Pocket PCs), h um interesse cada vez
maior de se disponibilizar para esses dispositivos as mesmas aplicaes que hoje rodam
em um PC. Apesar do ganho em mobilidade, tais equipamentos infelizmente apresentam
dois fortes obstculos visualizao de informaes. O primeiro que a resoluo de sua
tela em geral inferior a de um monitor moderno, o que implica em uma menor quantidade de dados que podem ser mostrados e, portanto, em uma baixa expressividade das
XXIV JAI

1305

visualizaes. O outro fator diz respeito ao tamanho reduzido da tela, que dificulta a percepo de detalhes de uma imagem, mesmo se apresentada em um equipamento com alta
resoluo. Esse dois obstculos exigem quebrar a visualizao de dados em pequenos
pedaos e implementar formas de interao para navegar na mesma. Com isso, o esforo
cognitivo para compreenso da base de dados aumentado e a efetividade fica comprometida. Uma sugesto visando compensar tais limitaes consiste em utilizar tcnicas
de visualizao que integram, em uma mesma imagem, uma viso global e uma regio
ampliada dos dados, como o caso das tcnicas Overview+Detail e Foco+Contexto. Animaes tambm devem ser empregadas para garantir uma transio suave da imagem e,
desta forma, a preservao do mapa mental, quando o usurio navega na visualizao.
No outro extremo dos ambientes de visualizao, se encontram os auditrios e as
salas de reunies equipados com dois ou mais projetores para gerar visualizaes em telas
grandes. Tais espaos de projeo possuem vrias vantagens em relao aos monitores de
vdeo convencionais. Entre elas, destacamos:
Geralmente, eles conseguem uma resoluo combinada maior e, consequentemente, permitem visualizaes mais expressivas ;
Eles ocupam uma grande poro do campo de viso do observador; isso reduz as chances do observador distrair-se com eventos alheios tarefa de visualizao, que normalmente acontecem na periferia do seu campo de viso
[do Nascimento, 2003].
Tais ambientes so mais caros, possuem pouca ou nenhuma mobilidade e tm
baixa disponibilidade. Mesmo assim, eles esto se tornando padres para atividades colaborativas em centros de pesquisas, empresas e organizaes governamentais, o que justifica o desenvolvimento de novas formas de visualizao que explorem caractersticas
peculiares dos mesmos.
Um outro ponto interessante de pesquisa consiste em se explorar, paralelamente
visualizao, canais alternativos de transmisso de dados que so perceptveis aos seres
humanos. Entre todas as formas de perceber o que acontece ao nosso redor, depois da
viso, o tato e a audio so os sentidos que mais se sobressaem. Alguns estudos preliminares j vm sendo realizados com o intuito de atribuir sons e sensaes de tato a
dados.
O processo sonorificao de dados basicamente consiste em associar a amplitude e a freqncia de notas sonoras a um conjunto de atributos dos dados. Em seguida,
define-se um caminho de varredura atravs do qual os dados so consultados em seqncia e as suas notas correspondentes so tocadas. Uma possibilidade fazer uma varredura
percorrendo vrios caminhos simultaneamente, o que permite a criao de sons complexos. Essa abordagem, quando combinada com uma imagem dos dados e com uma
indicao de qual parte est sendo tocada, ajuda a perceber atributos e relaes que no
esto explicitadas na visualizao.
J a sensao de tato comumente implementada por meio de luvas sensoriais
ou atravs de um dispositivo denominado Haptic [Massie and Salisburg, 1994]. O Haptic
consiste em um objeto real mvel preso a um conjunto de engrenagens. O usurio pode
segurar e mover esse objeto em vrios graus de liberdade, sendo que o movimento sincronizado com o deslocamento de um objeto virtual em um ambiente 3D mostrado em
XXIV JAI

1306

uma tela de computador. Foras que facilitam ou dificultam o movimento do objeto real
so exercidas pelas engrenagens de acordo com as caractersticas do espao tridimensional em que o objeto virtual se encontra. possvel, assim, explorar uma base de dados,
mapeando-a visualmente para um ambiente virtual e permitindo ao usurio navegar por
esse espao sentindo as suas irregularidades.
Um estudo abrangente sobre visualizao multi-sensorial pode ser encontrado em
[Nesbitt, 2003]. Congressos internacionais sobre visualizao auditiva e sobre inovaes
na rea de Interao Homem-Computador acontecem anualmente (Veja, por exemplo,
http://www.idc.ul.ie/icad2005/ ).
Por fim, vrios problemas em Visualizao de Informaes se mantm em aberto.
Entre eles, destacamos:
A comprovao de que visualizaes em 3D so mais efetivas do que em 2D.
Certamente, a construo de uma imagem tridimensional intutiva e ajuda na visualizao de dados quando os mesmos j possuem uma representao geomtrica
intrnseca em trs dimenses; isso vale mesmo se a imagem 3D for projetada em
um plano. No entanto, para outros tipos de dados como, por exemplo, desenho de
grafos ainda no se pode afirmar que 3D melhor do que 2D.
Em Visualizao de Software, a existncia de uma forma geral e efetiva para demonstrar graficamente como programas grandes e/ou complexos funcionam ou
como eles manipulam grandes volumes de dados.
A utilizao efetiva das diversas mdias para visualizao de dados. Atualmente,
apesar do significativo avano dos computadores e de ficarmos horas em frente
a um monitor de vdeo escrevendo ou navegando na Internet, ainda recorremos
ao antigo papel quando precisamos ler um documento longo. A melhor forma de
utilizarmos as diferentes mdias de visualizao, tais como o papel, o monitor de
vdeo, a tela do Assistente Pessoal de Dados, a tela grande de um ambiente de
projeo ou, at mesmo, alguns dispositivos modernos para visualizao em 3D
ainda uma questo que precisa ser respondida.

Agradecimentos
Somos imensamente gratos aos alunos Thiago Vaz Viera e Tiago Naves Melo do Curso
de Graduao em Cincias da Computao do Instituto de Informtica (INF) da UFG
pela ajuda na elaborao das figuras deste trabalho e aos professores Dr. Humberto Jos
Longo, do INF-UFG, e William D. Ferreira, M.Sc., da Universidade Salgado de Oliveira,
pela reviso do texto.

Referncias
Aarts, E. and Korst, J. (1989). Simulated Annealing and Boltzmann Machines. John Wiley
& Sons Ltd.
Ahlberg, C. and Shneiderman, B. (1994). Visual information seeking: Tight coupling of
dynamic query filters with starfield displays. In Human Factors in Computing Systems.
Conference Proceedings CHI94, pages 313317.
XXIV JAI

1307

Artero, A. O., de Oliveira, M. C. F., and Levkowitz, H. (2004). Uncovering clusters in


crowded parallel coordinates visualizations. In INFOVIS 04: Proceedings of the IEEE
Symposium on Information Visualization (INFOVIS04), pages 8188, Washington,
DC, USA. IEEE Computer Society.
Balzer, M., Noack, A., Deussen, O., and Lewerentz, C. (2004). Software landscapes:
Visualizing the structure of large software systems. In VisSym, pages 261266.
Bollobs, B. (1978). Extremal Graph Theory. Academic Press, New York.
Borg, I. and Groenen, P. (1997). Modern Multidimensional Scaling. Springer-Verlag,
New York.
Branke, J., Bucher, F., and Schmeck, H. (1997). A genetic algorithm for drawing undirected graphs. In Proc. 3rd Nordic Work. Genetic Algorithms and Their Applications,
3NWGA, pages 193206. Finnish Artificial Intelligence Society. Paper 15.
Brath, R. (1997). Metrics for effective information visualization. In INFOVIS 97: Proceedings of the 1997 IEEE Symposium on Information Visualization (InfoVis 97), page
108, Washington, DC, USA. IEEE Computer Society.
Card, S. K., MacKinlay, J. D., Shneiderman, B., and Card, M. (1999). Readings in Information Visualization: Using Vision to Think. Morgan Kaufmann Series in Interactive
Technologies, Academic Press.
Chernoff, H. (1973). The use of faces to represent points in k-dimensional space graphically. Journal of the American Statistical Association68, pages 361368.
Cleveland, W. S. and McGill, R. (1984). Graphical perception: Theory, experimentation and application to the development of graphical methods. J. American Statistical
Association, 79(387):531554.
Davidson, R. and Harel, D. (1989). Drawing graphs nicely using simulated annealing.
Technical report, Department of Applied Mathematics and Computer Science, The
Weizmann Institute of Science, Rehovot.
Davidson, R. and Harel, D. (1996). Drawing graphics nicely using simulated annealing.
ACM Trans. Graph., 15(4):301331.
de Holanda Ferreira, A. B. (2004). Novo Dicionrio Aurlio da Lngua Portuguesa. Editora Positivo.
Di Battista, G., Eades, P., Tamassia, R., and Tollis, I. G. (1994). Algorithms for drawing
graphs: an annotated bibliography. Comput. Geom. Theory Appl., 4:235282.
Di Battista, G., Eades, P., Tamassia, R., and Tollis, I. G. (1999). Graph Drawing. Prentice
Hall, Upper Saddle River, NJ.
do Nascimento, H. A. D. (2003). User Hints for Optimization Processes. PhD thesis,
University of Sydney, Australia.
do Nascimento, H. A. D. and Eades, P. (2002). A focus and constraint-based genetic
algorithm for interactive directed graph drawing. In Abraham, A., Ruiz-del-Solar, J.,
and Kppen, M., editors, Soft Computing Systems - Design, Management and Applications, Frontiers in Artificial Intelligence and Applications Vol. 87, pages 634643.
IOS Press Amsterdam, Berlin, Oxford, Tokyo, Washington D.C.
XXIV JAI

1308

Dwyer, T. and Eades, P. (2002). Visualising a fund manager flow graph with columns and
worms. In Proceedings of the 6th International Conference on Information Visualisation, IV02, pages 147158. IEEE Computer Society.
Eades, P. (1984). A heuristic for graph drawing. Congr. Numer., 42:149160.
Eades, P. (1989). Complexity issues in drawing directed graphs. In Proceedings of the
International Workshop on Discrete Algorithms and Complexity, pages 915, Fukuoka,
Japan. Institute of Electronics, Information and Communication Engineers (IEICE),
Tokyo. November.
Eades, P. and Wormald, N. C. (1994). Edge crossings in drawings of bipartite graphs.
Algorithmica, 11:379403.
Eades, P. D. (1992). Drawing free trees. Bulletin of the Institute for Combinatorics and
its Applications, 5:1036.
Fary, I. (1948). On straight lines representation of planar graphs. Acta Sci. Math. Szeged.,
11:229233.
Furnas, G. W. (1981). The FISHEYE view: A new look at structured files. Technical
Report #81-11221-9, Bell Laboratories, Murray Hill, New Jersey 07974, U.S.A.
Garey, M. R. and Johnson, D. S. (1979). Computers and Intractability: A Guide to the
Theory of NP-Completeness. W. H. Freeman, New York, NY.
Garey, M. R. and Johnson, D. S. (1983). Crossing number is NP-complete. SIAM J.
Algebraic Discrete Methods, 4(3):312316.
Garg, A. and Tamassia, R. (1995). On the computational complexity of upward and
rectilinear planarity testing. In Tamassia, R. and Tollis, I. G., editors, Graph Drawing
(Proc. GD 94), volume 894 of Lecture Notes in Computer Science, pages 286297.
Springer-Verlag.
Goldberg, D. E. (1989). Genetic Algorithm in Search, Optimization, and Machine Learning. Addison Wesley Publishing Company.
Hopcroft, J. and Tarjan, R. E. (1974). Efficient planarity testing. J. ACM, 21(4):549568.
Inselberg, A. (1997). Multidimensional detective. In IEEE Symposium on Information
Visualization (InfoVis 97), pages 100107, Washington - Brussels - Tokyo. IEEE. October.
Inselberg, A. and Dimsdale, B. (1990). Parallel coordinates: a tool for visualizing multidimensional geometry. In VIS 90: Proceedings of the 1st conference on Visualization
90, pages 361378, Los Alamitos, CA, USA. IEEE Computer Society Press.
Johnson, B. and Shneiderman, B. (1991). Tree-maps: a space-filling approach to the
visualization of hierarchical information structures. In VIS 91: Proceedings of the
2nd conference on Visualization 91, pages 284291. IEEE Computer Society Press.
Kamada, T. and Kawai, S. (1989). An algorithm for drawing general undirected graphs.
Inform. Process. Lett., 31:715.
Kirkpatrick, S., Jr., C. D. G., and Vecchi, M. P. (1983). Optimization by simulated annealing. Science, 220(4598):671680. May.
XXIV JAI

1309

Lamping, J. and Rao, R. (1996). The hyperbolic browser: A focus + context technique for
visualizing large hierarchies. Journal of Visual Languages and Computing, 7(1):33
35.
Lee, M. D., Reilly, R. E., and Butavicius, M. E. (2003). An empirical evaluation of
chernoff faces, star glyphs, and spatial visualizations for binary data. In CRPITS 24:
Proceedings of the Australian symposium on Information visualisation, pages 110,
Darlinghurst, Australia, Australia. Australian Computer Society, Inc.
Lin, X. (1992). Analysis of Algorithms for Drawing Graphs. PhD thesis, Department of
Computer Science, University of Queensland.
Mackinlay, J. (1986). Automating the design of graphical presentations of relational information. ACM Transactions on Graphics, 5(2):110141. April.
Mackinlay, J. D., Robertson, G. G., and Card, C. (1991). The perspective wall: Detail and
context smoothly integrated. In Proceedings of ACM CHI91 Conference on Human
Factors in Computing Systems and Graphics Interface, ACM SIGCHI, pages 173179.
ACM-Press.
Manning, J. (1990). Geometric Symmetry in Graphs. Ph.D. Thesis, Department of Computer Sciences, Purdue University.
Manning, J. (1991). Computational complexity of geometric symmetry detection in
graphs. Lecture Notes in Computer Science 507:1-7. Springer-Verlag. June.
Marcus, A., Feng, L., and Maletic, J. I. (2003). 3d representations for software visualization. In SoftVis 03: Proceedings of the 2003 ACM symposium on Software visualization, pages 27ff, New York, NY, USA. ACM Press.
Marr, D. (1982). Vision - A Computational Investigation into the Human Representation
and Processing of Visual Information. W. H. Freeman and Company.
Massie, T. H. and Salisburg, J. K. (1994). The phantom haptic interface: A device for
probing virtual objects. In Proceedings of the ASME International Mechanical Engineering Congress and Exhibition, volume DSC 55-1, pages 295302, Chicago, IL.
Metropolis, N., Rosenbluth, A., Rosenbluth, M., Teller, A., and Teller, E. (1953).
Equation of state calculations by fast computing machines. Journal Chem. Physics,
6(21):10871092.
Nesbitt, K. V. (2003). Multi-sensory Display of Abstract Data. PhD thesis, School of
Information Technologies, University of Sydney, Australia.
Nielsen, J. (1993). Usability Engineering. AP Professional, Cambridge.
Rao, R. and Card, S. K. (1994). The table lens: Merging graphical and symbolic representation in an interactive focus + context visualization for tabular information. In Proc.
ACM Conf. on Human Factors in Software, pages 318322. ACM-Press.
Reingold, E. and Tilford, J. (1981). Tidier drawing of trees. IEEE Trans. Softw. Eng.,
SE-7(2):223228.
Shneiderman, B. (2004). Designing the User Interface: Strategies for Effective HumanComputer Interaction. Addison-Wesley Publishing, Reading, MA, fourth edition.
XXIV JAI

1310

Spence, R. (2000). Information Visualization. ACM Press.


Stein, S. K. (1951). Convex maps. Proc. Amer. Math. Soc., 2:464466.
Sugiyama, K., Tagawa, S., and Toda, M. (1981). Methods for visual understanding of
hierarchical systems. IEEE Trans. Syst. Man Cybern., SMC-11(2):109125.
Supowit, K. J. and Reingold, E. M. (1983). The complexity of drawing trees nicely. Acta
Inform., 18:377392.
Swamy, M. N. S. and Thulasiraman, K. (1981). Graphs, Networks, and Algorithms. John
Wiley & Sons, New York.
Tufte, E. R. (1983). The Visual Display of Quantitative Information. CT: Graphics Press.
Tufte, E. R. (1990). Envisioning Information. Graphics Press.
Tufte, E. R. (1997). Visual explanations: images and quantities, evidence and narrative.
Graphics Press.
Tunkelang, D. (1993). A layout algorithm for undirected graphs. In Proc. of the ALCOM
International Workshop on Graph Drawing, pages 1416.
Utech, J., Branke, J., Schmeck, H., and Eades, P. (1998). An evolutionary algorithm for
drawing directed graphs. In In Proceedings of the 1998 International Conference on
Imaging Science, Systems, and Technology (CISST98), pages 154160.
Wagner, K. (1936). Bemerkungen zum vierfarbenproblem. Jahresbericht der Deutschen
Mathematiker-Vereinigung, 46:2632.
Ware, C. (2000). Information Visualization: Perception for Design. Morgan Kaufmann
Interactive Technologies Series.
Ware, C. (2004). Information Visualization: Perception for Design. Morgan Kaufmann
Interactive Technologies Series, 4th edition.
Wetherell, C. and Shannon, A. (1979). Tidy drawing of trees. IEEE Trans. Softw. Eng.,
SE-5(5):514520.
Williamson, C. and Shneiderman, B. (1992). The dynamic homefinder: evaluating dynamic queries in a real-estate information exploration system. In SIGIR 92: Proceedings
of the 15th annual international ACM SIGIR conference on Research and development
in information retrieval, pages 338346, New York, NY, USA. ACM Press.
Xavier, S. S. A. (2004). Visualizaes de informao para suporte a EAD ferramenta
VisED. Monografia de Projeto Final de Curso, Instituto de Informtica, Universidade
Federal de Gois.

XXIV JAI

1311

Hugo Alexandre Dantas do Nascimento Bacharel em Cincias da Computaco


pelo DIMAp-UFRN (1994), Mestre em Cincia da Computaco pelo IC-Unicamp
(1997) e Doutor em Cincia pela Universidade de Sidney-Austrlia (2003). Ele
professor do Instituto de Informtica da Universidade Federal de Gois (UFG)
desde 1997, onde realiza pesquisas nas reas de Desenho de Grafos, Otimizao
Combinatria e Visualizao de Informaes. Suas publicaes incluem artigos
sobre novos algoritmos para desenho de grafos, uso de visualizaes em
processos semi-automticos de otimizao combinatria e construo de
interfaces homem-mquina para atividades interativas e de visualizao. J
ministrou em 2002 e 2003 um minicurso local e uma disciplina na graduao
sobre Visualizao de Informaes. Atualmente, Hugo colaborador do Grupo de
Pesquisa de Visualizao de Informaes do School of Information Technology da
Universidade de Sidney (http://www.it.usyd.edu.au/~visual), sendo responsvel
pela implementao na UFG de uma plataforma de hardware para visualizao e
interao remota com o grupo na Austrlia.
Cristiane Bastos Rocha Ferreira Bacharel em Cincias da Computao pela
Universidade Federal de Gois (1999) e Mestre em Informtica Aplicada pela
Pontifcia Universidade Catlica do Paran (2002). Desde de 2002, Cristiane
professora do Instituto de Informtica da Universidade Federal de Gois e vem
trabalhando nas reas de Anlise Multirresoluo, Percepo, Reconhecimento
de Padres, Viso Computacional e Processamento de Imagens. J trabalhou
como Assistente de Pesquisa no Programa de Ps-Graduao em Informtica
Aplicada da Pontifcia Universidade Catlica do Paran na rea de Viso
Computacional. Suas publicaes esto relacionadas com classificao
automtica de mamogramas, transformaes Wavelets, extrao e seleo de
caractersticas de imagens.

XXIV JAI

1312