Criando gráficos via AdvPL com FWChartBar

Olá pessoal…

Hoje vou mostrar um exemplo simples de como criar gráfico de barra em AdvPL, utilizando a classe FWChartBar.


Exemplo de FWCharBar

Exemplo de FWCharBar

Foram criadas novas classes para geração de gráficos substituindo a antiga TMSGraphic, abaixo uma lista das classes novas com o link para o TDN (todas herdam da FwChartFactory):
FWChartBar – Gráficos de Barra
FWChartBarComp – Gráficos de Barra (Comparação)
FWChartLine – Gráficos de Linha
FWChartPie – Gráficos de Pizza

E abaixo um exemplo simples de FWChartBar (do print acima):

//Bibliotecas
#Include "Protheus.ch"  

/*/{Protheus.doc} zTstChart
Função de teste da classe FWChartBar
@type function
@author Atilio
@since 01/12/2015
@version 1.0
	@example
	u_zTstChart()
	@see http://tdn.totvs.com/display/public/mp/FWChartBar
/*/

User Function zTstChart()
	Local oChart
	Local oDlg
	Local aRand := {}
	
	//Cria a Janela
	DEFINE MSDIALOG oDlg PIXEL FROM 0,0 TO 400,600
		//Instância a classe
		oChart := FWChartBar():New()
		
		//Inicializa pertencendo a janela
		oChart:Init(oDlg, .T., .T. )
		
		//Seta o título do gráfico
		oChart:SetTitle("Título", CONTROL_ALIGN_CENTER)
		
		//Adiciona as séries, com as descrições e valores
		oChart:addSerie("Ano 2011", 20044453.50)
		oChart:addSerie("Ano 2012", 21044453.35)
		oChart:addSerie("Ano 2013", 22044453.15)
		oChart:addSerie("Ano 2014", 23044453.10)
		oChart:addSerie("Ano 2015", 25544453.01)
		
		//Define que a legenda será mostrada na esquerda
		oChart:setLegend( CONTROL_ALIGN_LEFT )
		
		//Seta a máscara mostrada na régua
		oChart:cPicture := "@E 999,999,999,999,999.99"
		
		//Define as cores que serão utilizadas no gráfico
		aAdd(aRand, {"084,120,164", "007,013,017"})
		aAdd(aRand, {"171,225,108", "017,019,010"})
		aAdd(aRand, {"207,136,077", "020,020,006"})
		aAdd(aRand, {"166,085,082", "017,007,007"})
		aAdd(aRand, {"130,130,130", "008,008,008"})
		
		//Seta as cores utilizadas
		oChart:oFWChartColor:aRandom := aRand
		oChart:oFWChartColor:SetColor("Random")
		
		//Constrói o gráfico
		oChart:Build()
	ACTIVATE MSDIALOG oDlg CENTERED
Return

Esses e outros códigos, estão disponíveis gratuitamente no nosso GitHub, acesse em github.com/dan-atilio/AdvPL.

Bom pessoal, por hoje é só.
Abraços e até a próxima.

About Dan_Atilio

Analista e desenvolvedor de sistemas na TOTVS Oeste Paulista Bauru. Técnico em Informática pelo CTI da Unesp. Graduado em Banco de Dados pela Fatec Bauru. Entusiasta de soluções Open Source e blogueiro nas horas vagas. Autor do projeto Terminal de Informação, onde são postados tutoriais e notícias envolvendo o mundo da tecnologia.

6 respostas em “Criando gráficos via AdvPL com FWChartBar

  1. No meu caso funcionou tudo, menos a questão de cores. Ele não está deixando escolher as cores que quero, independente se coloco random ou se seto uma cor fixa. Ele só fica cor padrão.

      • Inclusive to fazendo o gráfico do tipo pizza e também não consigo alterar as cores… Liguei no suporte da Totvs e eles me falaram que não tem como alterar as cores… Que vai pegar sempre as cores padrões…

        • Boa noite Mario, tudo bem?
          Então, cacei aqui nas minhas referências, e ele realmente deixa a cor padrão (azulada), mas é possível definir algumas cores (poucas), no caso desse exemplo mesmo eu uso laranja, vermelho, cinza, etc).
          Infelizmente não achei nenhuma documentação sobre as cores aceitas.

Deixe uma resposta