Создание диаграммы в таблице Excel с использованием C#

Категория: ImagingOffice.NET

8 мая 2024

Microsoft Office Excel – это приложение для работы с электронными таблицами, которое позволяет редактировать данные электронной таблицы и визуализовать данные электронной таблицы с помощью диаграмм. Excel поддерживает следующие типы диаграмм: Гистограмма, График, Круговая, Линейчатая, С областями, Точечная, Карта, Биржевая, Поверхностная, Лепестковая, Дерево, Солнечные лучи, Ящик с усами, Каскадная, Воронка, Комбинированная.

VintaSoft Imaging .NET SDK + VintaSoft Office .NET Plug-in предоставляет мощный .NET API для работы с электронными таблицами, которые хранятся в XLSX файле.
VintaSoft Imaging .NET SDK позволяет создавать Excel диаграммы следующих типов:

Для создания диаграммы в таблице Excel с помощью VintaSoft Imaging .NET SDK необходимо выполнить следующие шаги:

Вот C# код, который демонстрирует как можно добавить "стандартную" диаграмму в таблицу Excel:
public static void AddStandardChartToXlsxWorksheet(string outXlsxFilename)
{
    // create a spreadsheet editor for synchronous editing of new spreadsheet document
    using (SpreadsheetEditor editor = SpreadsheetEditor.CreateEditor())
    {
        // get the first worksheet (empty)
        Worksheet sheet = editor.Document.Worksheets[0];
        
        // start the worksheet editing
        WorksheetEditor worksheetEditor = editor.StartEditing(sheet);

        // set worksheet name
        worksheetEditor.SetName("Example of add chart");
        
        // set categories and series for chart
        editor.SetCellValue(sheet, "A2", "Series 1");
        editor.SetCellValue(sheet, "A3", "Series 2");
        editor.SetCellValue(sheet, "A4", "Series 3");
        editor.SetCellValue(sheet, "B1", "Category 1");
        editor.SetCellValue(sheet, "C1", "Category 2");
        editor.SetCellValue(sheet, "D1", "Category 3");
        editor.SetCellValue(sheet, "E1", "Category 4");

        // set sample values for chart
        editor.SetCellValue(sheet, "B2", 5);
        editor.SetCellValue(sheet, "C2", 15);
        editor.SetCellValue(sheet, "D2", 45.5);
        editor.SetCellValue(sheet, "E2", 35);
        editor.SetCellValue(sheet, "B3", 110);
        editor.SetCellValue(sheet, "C3", 90);
        editor.SetCellValue(sheet, "D3", 88);
        editor.SetCellValue(sheet, "E3", 25);
        editor.SetCellValue(sheet, "B4", 15);
        editor.SetCellValue(sheet, "C4", 50);
        editor.SetCellValue(sheet, "D4", 20);
        editor.SetCellValue(sheet, "E4", 45);

        // add new Line chart to the worksheet
        SheetDrawing chart = editor.AddChart(sheet, StandardChartType.Line_LineWithMarkers_Horizontal, "A1:E4", new SheetDrawingLocation("A7:F17"));
        // set the chart title
        worksheetEditor.CreateChartPropertiesEditor(chart).SetTitle("Line Chart Example (Horizontal)");

        // finish the spreadsheet editing
        editor.FinishEditing();

        // save created spreadsheet document to a XLSX file
        editor.SaveAs(outXlsxFilename);
    }
}