public ActionResult _Grafico() { var operacaoesRendimento = operacaoBLL.ListarOperacao(usuarioBLL.ConsultarUsuarioSessao(), TipoOperacao.Rendimento); var operacaoesPassivo = operacaoBLL.ListarOperacao(usuarioBLL.ConsultarUsuarioSessao(), TipoOperacao.Passivo); var dataIncial = DateTime.Today.AddMonths(Processos.Configuracao.Configuracao_Grafico_Meses_Anterior); var dataFinal = DateTime.Today.AddMonths(Processos.Configuracao.Configuracao_Grafico_Meses_Posterior); var listaMeses = utilBLL.RetornarRangeDeMeses(dataIncial, dataFinal); List <List <EixoX> > valoresEixoX = new List <List <EixoX> >(); List <EixoX> listaEixoX = new List <EixoX>(); listaEixoX.Add(GerarEixoXGrafico(operacaoesRendimento, TipoOperacao.Rendimento, System.Drawing.ColorTranslator.FromHtml("#57c5db"), "Rendimento", dataIncial, dataFinal)); listaEixoX.Add(GerarEixoXGrafico(operacaoesPassivo, TipoOperacao.Passivo, System.Drawing.ColorTranslator.FromHtml("#FF5046"), "Despesa", dataIncial, dataFinal)); valoresEixoX.Add(listaEixoX); var grafico = new GraficoDeAreaDTO() { EixoX = valoresEixoX, Cor = Color.White, CorBorda = Color.White, Titulo = string.Empty, EixoY = listaMeses, TipoDeGrafico = ChartTypes.Areaspline }; var retorno = new GraficoBLL().GerarGraficoDeAreas(grafico); return(PartialView(retorno)); }
public Highcharts GerarGraficoDeAreas(GraficoDeAreaDTO pGrafico) { Highcharts columnChart = new Highcharts("areasplinechart"); columnChart.InitChart(new Chart() { Type = pGrafico.TipoDeGrafico, BackgroundColor = new BackColorOrGradient(pGrafico.Cor), Style = "fontWeight: 'bold', fontSize: '17px'", BorderColor = pGrafico.CorBorda, BorderRadius = 0, BorderWidth = 2 }); columnChart.SetTitle(new Title() { Text = pGrafico.Titulo }); columnChart.SetXAxis(new XAxis() { Type = AxisTypes.Category, Title = new XAxisTitle() { Style = "fontWeight: 'bold', fontSize: '14px'" }, Categories = pGrafico.EixoY.ToArray() }); columnChart.SetYAxis(new YAxis() { Title = new YAxisTitle() { Style = "fontWeight: 'bold', fontSize: '12px'" }, ShowFirstLabel = true, ShowLastLabel = true, Min = 0 }); columnChart.SetCredits(new Credits() { Enabled = false }); columnChart.SetLegend(new Legend { Enabled = true, BorderColor = System.Drawing.Color.CornflowerBlue, BorderRadius = 6, BackgroundColor = new BackColorOrGradient(ColorTranslator.FromHtml("#FFADD8E6")) }); List <Series> listaValoresX = new List <Series>(); foreach (var item in pGrafico.EixoX) { foreach (var valoresX in item) { var valores = new DotNet.Highcharts.Helpers.Data(valoresX.Valores.ToArray()); var serie = new Series() { Name = valoresX.Nome, Data = valores, Color = valoresX.Cor }; listaValoresX.Add(serie); } } columnChart.SetSeries(listaValoresX.ToArray()); return(columnChart); }