Tienda Web
Área de Clientes
MindFusion

P: ¿Cómo puedo reemplazar la leyenda estándar que muestra título de la serie en mi gráfico con dos leyendas en los dos lados del gráfico?

R: Tiene dos maneras de hacer esto. Una es crear listas separadas con ChartSeries – a ser usadas como datos para las dos leyendas separadas. Aquí está el código:

 var firstSeries = new ChartSeriesCollection() { series0, series1 };
 var secondSeries = new ChartSeriesCollection() { series2, series3 };
 ChartLegend legend1 = new ChartLegend();
 legend1.Series = firstSeries;
 LayoutPanel.SetDock(legend1, Dock.Right);
 lineChart1.Legends.Add(legend1);

 ChartLegend legend2 = new ChartLegend();
 legend2.Series = secondSeries;
 LayoutPanel.SetDock(legend2, Dock.Left);
 lineChart1.Legends.Add(legend2);

La segunda opción es crear dos objetos SeriesLegend para los cuales usted establece las leyendas y brochas a los títulos y trazos de su serie. Aquí está cómo hacerlo:

 
 SeriesLegend legend1 = new SeriesLegend();
 legend1.LabelsSource = new List(){series0.Title, series1.Title};
 legend1.BrushesSource = new List() { series0.Fills[0], series1.Fills[0] };
 LayoutPanel.SetDock(legend1, Dock.Right);
 lineChart1.Legends.Add(legend1);

 SeriesLegend legend2 = new SeriesLegend();
 legend2.LabelsSource = new List() { series2.Title, series3.Title };
 legend2.BrushesSource = new List() { series2.Fills[0], series3.Fills[0] };
 LayoutPanel.SetDock(legend2, Dock.Left);
 lineChart1.Legends.Add(legend2); 


Aquí asumimos que ChartSeries tiene su propiedad Title estblecida, y tiene al menos una Brocha añadida a su lista Fills:

 LineSeries series1 = new LineSeries();
 series1.XData = new List() { 4, 7, 12, 16 };
 series1.YData = new List() { 45, 62, 18, 32 };
 series1.Fills.Add(Brushes.Orange);
 series1.Title = "Tokyo";
 lineChart1.Series.Add(series1);

Copyright © 2001-2024 MindFusion LLC. All rights reserved.
Terms of use - Contactos