
Usando a função MATGRAPH pode-se criar gráficos que serão montados a partir dos dados de um array ou de um arquivo de trabalho passado como parâmetro.
Pode-se também escolher o tipo de gráfico com 2 ou 3 dimensões e visualizar em formato de linha, barra ou área.
Para usar, use o include PROTHEUS.CH ou TOTVS.CH e inclua a função abaixo em seu programa, modificando-a da maneira que achar melhor:
Para usar, use o include PROTHEUS.CH ou TOTVS.CH e inclua a função abaixo em seu programa, modificando-a da maneira que achar melhor:
user function fRBSFgraf()
local lGraph3D := .t. // .F. Grafico 2 dimensoes - .T. Grafico 3 dimensoes
local lMenuGraph := .t. // .F. Nao exibe menu - .T. Exibe menu para mudar o tipo de grafico
local lMudaCor := .t.
local nTipoGraph := 2
local nCorDefault := 1
local aDados := {{"Valor 1", 100}, {"Valor 2", 500},{"Valor 3", 1000}}
local aStru := {}
local cArquivo := CriaTrab(,.f.)
local i
If MsgYesNo("Deseja exibir o grafico com os dados do array?")
// O grafico sera montado a partir dos dados do array aDados
MatGraph("Graficos",lGraph3D,lMenuGraph,lMudaCor,nTipoGraph,nCorDefault,aDados)
Else
aStru := { {"EixoX", "C", 20, 0}, {"EixoY", "N", 8, 2} }
dbCreate(cArquivo,aStru)
dbUseArea(.T.,,cArquivo,"GRAFICO",.F.,.F.)
For i:=1 to Len(aDados)
("GRAFICO")->( dbAppend() )
("GRAFICO")->(EixoX) := aDados[i][1]
("GRAFICO")->(EixoY) := aDados[i][2]
Next i
// O grafico sera montado a partir dos dados da area de trabalho "GRAFICO"
MatGraph("Graficos", lGraph3D, lMenuGraph, lMudaCor, nTipoGraph, nCorDefault,,"GRAFICO",{"EixoX","EixoY"})
("GRAFICO")->( dbCloseArea() )
EndIf
Return
•Veja também: Listbox no Protheus
Como faço para imprimir esse grafico?
ResponderExcluirHeitor
hrwsheitor@hotmail.com
Prezado Heitor,
ResponderExcluirVamos verificar e daremos retorno.
Pessoal,
ResponderExcluirUtilizem a MSGRAPH.
É muito mais completa, com diversos recursos de edição e suporte a impressão.
Abraços,
Cristiano Oliveira.
Obrigado pela participação, Cristiano! Se possível, posta um pequeno exemplo.
Excluir