Usuário com melhor resposta
Dúvida sobre serie do componente chart control

Pergunta
-
Boas senhores, uso vs2010 c# aspnet
Estou montando um gráfico, onde tenho 2 series...
As informações são data x valor
Estas series não tem o mesmo número de informações. Quando mostro o gráfico algumas datas não aparecem..
Datas que não aparecem: 26/04/12 - 06/05/2015 - 09/12/15
Na primeira serie não tenho a data 26/04/2012 e as 3 ultimas datas nas 2 series são diferentes...
Será que falta ativar alguma configuração?
Segue o gráfico e código utilizado....
private void fMontaGrafico2() { var data1 = new System.Collections.Generic.Dictionary<string, float> { { "13/05/2010", 181}, { "26/09/2010", 171}, { "01/05/2011", 125}, { "28/06/2013", 257}, { "01/10/2014", 167}, { "14/02/2015", 158}, { "30/06/2015", 151}, { "13/11/2015", 143} }; var data2 = new System.Collections.Generic.Dictionary<string, float> { { "13/05/2010", 133}, { "26/09/2010", 145}, { "01/05/2011", 121}, { "26/04/2012", 251}, { "28/06/2013", 115}, { "01/10/2014", 140}, { "06/05/2015", 117}, { "09/12/2015", 99}, { "13/07/2016", 83} }; Chart1.Height = System.Web.UI.WebControls.Unit.Pixel(600); Chart1.Width = Unit.Pixel(1100); Chart1.Legends.Add("Legend").Alignment = System.Drawing.StringAlignment.Center; Chart1.Palette = ChartColorPalette.None; Chart1.PaletteCustomColors = new System.Drawing.Color[] { System.Drawing.Color.FromArgb(191, 214, 151), Color.Blue , Color.FromArgb(191, 79, 75), Color.Green }; Chart1.ChartAreas[0].AxisX.Interval = 1; var area = new ChartArea(); area.AxisX.MajorGrid.LineColor = Color.Transparent; Chart1.ChartAreas.Add(area); var series1 = new Series("series1"); foreach (var item in data1) { series1.Points.AddXY(item.Key, item.Value); } series1.MarkerBorderWidth = 1; var series2 = new Series("series2"); foreach (var item in data2) { series2.Points.AddXY(item.Key, item.Value); } series1.ChartType = series2.ChartType = SeriesChartType.Line; series1.Font = series2.Font = new Font("Verdana", 8.25f, FontStyle.Regular); series1.IsValueShownAsLabel = true; series2.IsValueShownAsLabel = true; Chart1.Series.Add(series1); Chart1.Series.Add(series2); }
Obrigato
Respostas
Todas as Respostas
-
O problema é o espaço horizontal. Para aparecer todas as datas voce vai ter que colocar na vertical, como na figura abaixo:
o codigo fica mais ou menos assim:
var c = Chart1; c.ChartAreas.Add(new ChartArea()); c.Width = 200; c.Height = 200; Series mySeries = new Series(); mySeries.Points.DataBindXY(new string[] { "one", "two", "three" }, new int[] { 1, 2, 3 }); c.Series.Add(mySeries); c.ChartAreas[0].AxisX.LabelStyle.Angle = 90;
att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
-
-
Olá DET1,
Já conseguiu achar uma solução para o problema até o momento?
Marcos Roberto de Souza Junior
Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta DET1 sexta-feira, 23 de outubro de 2015 22:11
- Não Marcado como Resposta William John Adam TrindadeModerator sábado, 24 de outubro de 2015 01:34
-
-