P: Estoy construyendo un gráfico de barras horizontal. Cuando establezco los datos en un gráfico vertical todo está bien. Cuando lo giro (con SeriesType = Horizontal) todo se va al lugar equivocado. Establezco los datos correctos para X y Y pero esto no parece funcionar.
R: Cuando rote el gráfico de barras hay otros ajustes a ser considerados aparte de los datos, que asigna a la serie. Los más importantes son los ajusted de los ejes. Si ha establecido manualmente los valores mínimo y máximo en los ejes y su intervalo cuando cambia los datos para el gráfico, los ajustes de los ejes probablemente no son correctos. Si usted tiene este gráfico de barras:
BarSeries series0 = barChart1.Series[0] as BarSeries; series0.BarType = BarType.Vertical; series0.XData = new ListAquí puede establecer los ejes como sigue:{ 1, 2, 3, 4 }; series0.YData = new List { 23, 45, 67, 28 };
barChart1.XAxisSettings.MinValue = 0; barChart1.XAxisSettings.Interval = 1; barChart1.XAxisSettings.MaxValue = 4; barChart1.YAxisSettings.MinValue = 0; barChart1.YAxisSettings.MaxValue = 80; barChart1.YAxisSettings.Interval = 10;Sin embargo, una vez que cambie los datos de X e Y los valores del eje harán que el gráfico se vea mal. Por lo tanto, hay que cambiarlos también:
barChart1.YAxisSettings.MinValue = 0; barChart1.YAxisSettings.Interval = 1; barChart1.YAxisSettings.MaxValue = 4; barChart1.XAxisSettings.MinValue = 0; barChart1.XAxisSettings.MaxValue = 80; barChart1.XAxisSettings.Interval = 10;Puede dejar que el control calcule los ajustes de los ejes de forma automática, pero el resultado puede no ser lo que usted necesita. He aquí cómo hacerlo:
barChart1.YAxisSettings.MinValue = double.NaN; barChart1.YAxisSettings.Interval = double.NaN; barChart1.YAxisSettings.MaxValue = double.NaN; barChart1.XAxisSettings.MinValue = double.NaN; barChart1.XAxisSettings.MaxValue = double.NaN; barChart1.XAxisSettings.Interval = double.NaN;