ChartSeries

ChartSeries class

Представляет свойства ряда диаграмм.

Чтобы узнать больше, посетитеРабота с диаграммами документальная статья.

public class ChartSeries : IChartDataPoint

Характеристики

ИмяОписание
Bubble3D { get; set; }Указывает, следует ли применять к пузырькам на пузырьковой диаграмме 3-D-эффект.
BubbleSizes { get; }Получает коллекцию размеров пузырьков для этой серии диаграмм.
DataLabels { get; }Задает настройки меток данных для всей серии.
DataPoints { get; }Возвращает коллекцию объектов форматирования для всех точек данных в этой серии.
Explosion { get; set; }Указывает величину, на которую точка данных должна быть перемещена из центра круговой диаграммы. Может быть отрицательным; отрицательное значение означает, что свойство не задано и не должно применяться разбиение. Применяется только к круговым диаграммам.
Format { get; }Предоставляет доступ к заполнению и форматированию линий серии.
HasDataLabels { get; set; }Возвращает или задает флаг, указывающий, отображаются ли метки данных для серии.
InvertIfNegative { get; set; }Указывает, должен ли родительский элемент инвертировать свои цвета, если значение отрицательное.
LegendEntry { get; }Получает запись легенды для этой серии диаграмм.
Marker { get; }Указывает маркер данных. Маркер создается автоматически при запросе.
Name { get; set; }Возвращает или задает имя серии, если имя не задано явно, оно генерируется с использованием индекса. По умолчанию возвращает серию плюс один основанный индекс.
SeriesType { get; }Получает тип этой серии диаграмм.
Smooth { get; set; }Позволяет указать, будет ли линия, соединяющая точки на графике, сглажена с помощью сплайнов Катмулла-Рома.
XValues { get; }Получает коллекцию значений X для этой серии диаграмм.
YValues { get; }Получает коллекцию значений Y для этой серии диаграмм.

Методы

ИмяОписание
Add(ChartXValue)Добавляет указанное значение X к серии диаграмм. Если серия поддерживает значения Y и размеры пузырьков, они будут пустыми для значения X.
Add(ChartXValueChartYValue)Добавляет указанные значения X и Y в ряд диаграммы.
Add(ChartXValueChartYValue, double)Добавляет указанное значение X, значение Y и размер пузырька к серии диаграммы.
Clear()Удаляет все значения данных из серии диаграмм. Формат всех отдельных точек данных и меток данных очищается.
ClearValues()Удаляет все значения данных из серии диаграммы с сохранением формата точек данных и меток данных.
CopyFormatFrom(int)Копирует формат точки данных по умолчанию из точки данных с указанным индексом.
Insert(int, ChartXValue)Вставляет указанное значение X в ряд диаграммы по указанному индексу. Если ряд поддерживает значения Y и размеры пузырьков, они будут пустыми для значения X.
Insert(int, ChartXValueChartYValue)Вставляет указанные значения X и Y в ряд диаграммы по указанному индексу.
Insert(int, ChartXValueChartYValue, double)Вставляет указанное значение X, значение Y и размер пузырька в ряд диаграммы по указанному индексу.
Remove(int)Удаляет значение X, значение Y и размер пузырька, если поддерживается, из серии диаграммы по указанному индексу. Соответствующая точка данных и метка данных также удаляются.

Примеры

Показывает, как применять метки к точкам данных на линейной диаграмме.

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);

    // Применить метки данных к каждой серии на диаграмме.
    // Эти метки будут отображаться рядом с каждой точкой данных на графике и отображать ее значение.
    foreach (ChartSeries series in chart.Series)
    {
        ApplyDataLabels(series, 4, "000.0", ", ");
        Assert.AreEqual(4, series.DataLabels.Count);
    }

    // Измените строку разделителя для каждой метки данных в серии.
    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;

    // Для более четкого вида графика мы можем удалить метки данных по отдельности.
    dataLabel.ClearFormat();

    // Мы также можем удалить целую серию меток данных за один раз.
    chart.Series[2].DataLabels.ClearFormat();

    doc.Save(ArtifactsDir + "Charts.DataLabels.docx");
}

/// <summary>
/// Применить метки данных с пользовательским числовым форматом и разделителем к нескольким точкам данных в серии.
/// </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);
    }
}

Смотрите также