Explosion
Contents
[
Hide
]ChartSeries.Explosion property
Specifies the amount the data point shall be moved from the center of the pie. Can be negative, negative means that property is not set and no explosion should be applied. Applies only to Pie charts.
public int Explosion { get; set; }
Examples
Shows how to apply labels to data points in a line chart.
public void DataLabels()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape chartShape = builder.InsertChart(ChartType.Line, 400, 300);
Chart chart = chartShape.Chart;
Assert.AreEqual(3, chart.Series.Count);
Assert.AreEqual("Series 1", chart.Series[0].Name);
Assert.AreEqual("Series 2", chart.Series[1].Name);
Assert.AreEqual("Series 3", chart.Series[2].Name);
// Apply data labels to every series in the chart.
// These labels will appear next to each data point in the graph and display its value.
foreach (ChartSeries series in chart.Series)
{
ApplyDataLabels(series, 4, "000.0", ", ");
Assert.AreEqual(4, series.DataLabels.Count);
}
// Change the separator string for every data label in a series.
using (IEnumerator<ChartDataLabel> enumerator = chart.Series[0].DataLabels.GetEnumerator())
{
while (enumerator.MoveNext())
{
Assert.AreEqual(", ", enumerator.Current.Separator);
enumerator.Current.Separator = " & ";
}
}
ChartDataLabel dataLabel = chart.Series[1].DataLabels[2];
dataLabel.Format.Fill.Color = Color.Red;
// For a cleaner looking graph, we can remove data labels individually.
dataLabel.ClearFormat();
// We can also strip an entire series of its data labels at once.
chart.Series[2].DataLabels.ClearFormat();
doc.Save(ArtifactsDir + "Charts.DataLabels.docx");
}
/// <summary>
/// Apply data labels with custom number format and separator to several data points in a series.
/// </summary>
private static void ApplyDataLabels(ChartSeries series, int labelsCount, string numberFormat, string separator)
{
series.HasDataLabels = true;
series.Explosion = 40;
for (int i = 0; i < labelsCount; i++)
{
Assert.False(series.DataLabels[i].IsVisible);
series.DataLabels[i].ShowCategoryName = true;
series.DataLabels[i].ShowSeriesName = true;
series.DataLabels[i].ShowValue = true;
series.DataLabels[i].ShowLeaderLines = true;
series.DataLabels[i].ShowLegendKey = true;
series.DataLabels[i].ShowPercentage = false;
Assert.False(series.DataLabels[i].IsHidden);
Assert.False(series.DataLabels[i].ShowDataLabelsRange);
series.DataLabels[i].NumberFormat.FormatCode = numberFormat;
series.DataLabels[i].Separator = separator;
Assert.False(series.DataLabels[i].ShowDataLabelsRange);
Assert.True(series.DataLabels[i].IsVisible);
Assert.False(series.DataLabels[i].IsHidden);
}
}
See Also
- class ChartSeries
- namespace Aspose.Words.Drawing.Charts
- assembly Aspose.Words