Um componente que gosto de utilizar para gerar gr??ficos ?? o FusionCharts. Atrav??s dele ?? poss??vel criar gr??ficos animados e interativos em Flash como gr??ficos em pizza, barra, colunas, funil, linha, ??rea, bolha, etc. Al??m de trabalhar com ASP, ASP.NET, PHP, JSP, ColdFusion, Ruby on Rails, Python e HTML puro, pode-se utilizar em conjunto com bancos de dados como SQL Server, Oracle, MySQL, PostgreSQL, etc… O seu funcionamento consiste em apenas gerar o XML (em tempo de execu????o ou n??o) e indicar qual o gr??fico. Vamos ?? pr??tica…
Acesse o site da FusionCharts e baixe o pacote com os gr??ficos (na vers??o trial vem apenas os gr??ficos comuns – os mais complexos vem na vers??o paga). No arquivo baixado vem os SWF’s dos gr??ficos, exemplos de XML’s a serem gerados para cada gr??ficos, o JavaScript a ser incorporado na p??gina e demais documentos (qualquer d??vida veja na pasta Code > CSNET que cont??m um exemplo em ASP.NET e cont??m todos os arquivos que ir?? precisar). Para nosso exemplo, vamos gerar um gr??fico em pizza.
Crie um Web Site e adicione as pastas conforme a estrutura abaixo:
Adicione no App_Code as classes Util.cs e DbConn.cs. Na Bin adicione a refer??ncia ?? DLL da FusionCharts.dll, na Graficos adicione o SWF do gr??fico que iremos gerar (no caso escolha o Pizza3D.swf) e na pasta Js adicione o FusionCharts.js. Todos esses arquivos s??o encontrados no ZIP que baixou no mesmo caminho dito anteriormente.
Adicione uma p??gina ASPX agora e adicione no body ou no head o script:
<script language=”Javascript” type=”text/javascript” src=”js/FusionCharts.js”></script>
Tamb??m adicione um Literal (Controle) no local onde dever?? surgir o gr??fico. Para fins did??ticos coloque o ID do controle como GraphPizza. Agora tudo ser?? no Code-Behind… Adicione os namespaces Utilities e InfoSoftGlobal usando a cl??usula using. Em seguida criamos um m??todo onde ?? gerado o XML e encapsulado sobre o SWF da seguinte forma:
public void CriarGraficoPizza3D()
{
string strXML = “<graph showNames=’1′ caption=’Tipos de Clientes’ decimalPrecision=’0′>”;
strXML += “<set name=’Alvos’ value=’10’ color=’ED1C24’/>”;
strXML += “<set name=’Prospects’ value=’5′ color=’FFFF00’/>”;
strXML += “<set name=’Clientes’ value=’2′ color=’00E600’/>”;
strXML += “</graph>”;
GraphPizza.Text = FusionCharts.RenderChart(“Graficos/Pizza3D.swf”, “”, strXML, “GraficoPizza3D”, “400”, “300”, false, false);
}
No caso, gero todo o XML contendo os dados a serem apresentados e o passo por par??metro ao m??todo do FusionCharts para renderiz??-lo e exibi-lo. Bem simples, n??o? Esse ?? o exemplo mais f??cil… H?? v??rias formas de apresent??-lo bem como suas op????es fazem com que apresente mais variantes. O mais dif??cil (quer dizer trabalhoso) ?? gerar o XML…
2 respostas em “Gerando Gr??ficos em ASP.NET”
Thiago, a ??ltima vers??o do FusionCharts_Evaluation n??o vem com a classe Util.cs. Ser?? que voc?? poderia disponibilizar o c??digo desse projeto online(hospedado do megaupload, por exemplo)?!
Tamb??m n??o estou conseguindo rodar os exemplos do FusionCharts no VS2008 porque acusa um erro na linha do web.config.
O erro ??:
ASP.NET runtime error: Unrecognized attribute 'targetFramework'. Note that attribute names are case-sensitive. (D:asp.netFusionCharts_EvaluationCodeVB_NETweb.config line 20) D:asp.netFusionCharts_EvaluationCodeVB_NETDefault.aspx 1 1 Miscellaneous Files
J?? passou por isso?! Sabe como resolv??-lo?!
Aproveitando… voc?? tem esse exemplo com barras 3d?!
Obrigado.
Brian, em si, o Fusion Charts n??o requer configura????o no web.config. Digo isso na vers??o free, n??o sei informar na paga. Infelizmente, no caso, precisaria avaliar seu c??digo…