Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Спарклайны — это крошечные диаграммы внутри ячеек, которые полезны, когда требуется отобразить быстрый тренд рядом со строкой или столбцом данных, не занимая места полноценной диаграммы. Excel поддерживает три вида спарклайнов: линейные, столбцовые и победа/поражение. Aspose.Cells реализует эту возможность через API SparklineGroup и SparklineGroupCollection, расположенные в пространстве имён com.aspose.cells.Charts.
В Aspose.Cells каждый добавляемый спарклайн создаётся с помощью worksheet.SparklineGroups.add(...), который возвращает объект SparklineGroup. Затем этот объект можно использовать для задания типа спарклайна, диапазона данных, ячейки назначения и визуальных свойств, таких как цвет линии, толщина линии, маркеры и индикаторы верхних/нижних точек.
В этой статье рассматриваются все три типа спарклайнов, поддерживаемых Aspose.Cells — линейные, столбцовые и победа/поражение — и показано, как их добавлять, настраивать цвета и сохранять полученную рабочую книгу.
Линейный спарклайн рисует непрерывную линию через точки данных в серии, что делает его наиболее естественным выбором для отображения трендов во времени. В Aspose.Cells линейный спарклайн создаётся путём передачи SparklineType.Line в метод SparklineGroups.add.
Workbook и получите доступ к первому рабочему листу.CellArea, описывающий ячейку назначения, в которой будет нарисован спарклайн.worksheet.SparklineGroups.add(SparklineType.Line, "A1:E1", false, dest). Третий аргумент — false — сообщает Aspose.Cells, что диапазон данных является горизонтальным (строка), а не вертикальным (столбец).SparklineGroup. Для линейного спарклайна можно задать цвет линии с помощью group.Line.Color (который ожидает объект CellsColor из com.aspose.cells.Drawing), настроить толщину линии и включить маркеры верхних/нижних точек.let workbook = new AsposeCells.Workbook();
let worksheet = workbook.getWorksheets().get(0);
let cells = worksheet.getCells();
// Шаг 2: Записать примеры значений 5, -3, 8, -2, 6 в ячейки A1:E1
cells.get("A1").putValue(5);
cells.get("B1").putValue(-3);
cells.get("C1").putValue(8);
cells.get("D1").putValue(-2);
cells.get("E1").putValue(6);
// Шаг 3: Создать CellArea, указывающую на целевую ячейку F1
let dest = new AsposeCells.CellArea();
dest.setStartColumn(5); // столбец F (индексация с 0)
dest.setEndColumn(5);
dest.setStartRow(0); // строка 1 (индексация с 0)
dest.setEndRow(0);
// Шаг 4: Добавить линейную спарклайн из A1:E1 в F1
// SparklineGroups.Add возвращает индекс вновь добавленной группы
let index = worksheet.getSparklineGroups().add(AsposeCells.SparklineType.Line, "A1:E1", false, dest);
let group = worksheet.getSparklineGroups().get(index);
// Шаг 5: Создать красный CellsColor и назначить его цвету линии спарклайна
let red = workbook.createCellsColor();
red.setColor(AsposeCells.Color.fromArgb(255, 0, 0));
group.setSeriesColor(red);
// Шаг 6: Включить маркеры максимальной и минимальной точек
group.setShowHighPoint(true);
group.setShowLowPoint(true);
// Шаг 7: Сохранить книгу
workbook.save("output_line.xlsx");
Столбцовый спарклайн отображает каждую точку данных в виде вертикальной полосы. Это хорошо подходит для данных, величина которых имеет значение — например, ежемесячных объёмов продаж или количественных показателей. В Aspose.Cells столбцовый спарклайн создаётся путём передачи SparklineType.Column в метод SparklineGroups.add.
Процедура аналогична примеру с линейным спарклайном:
Workbook и получите доступ к первому рабочему листу.CellArea, описывающий ячейку назначения.worksheet.SparklineGroups.add(SparklineType.Column, "A1:E1", false, dest).SparklineGroup — например, задав group.Type для подтверждения типа или изменив цвет полос.let workbook = new AsposeCells.Workbook();
let worksheet = workbook.getWorksheets().get(0);
// Шаг 2: Записать примеры значений в A1:E1
let values = [5, -3, 8, -2, 6];
for (let i = 0; i < values.length; i++) {
worksheet.getCells().get(0, i).putValue(values[i]);
}
// Шаг 3: Создать CellArea, указывающую на F1 (индекс столбца 5, индекс строки 0)
let dest = new AsposeCells.CellArea();
dest.setStartColumn(5);
dest.setEndColumn(5);
dest.setStartRow(0);
dest.setEndRow(0);
// Шаг 4: Добавить столбцовую спарклайн в целевую ячейку
let idx = worksheet.getSparklineGroups().add(
AsposeCells.SparklineType.Column, "A1:E1", false, dest);
let group = worksheet.getSparklineGroups().get(idx);
// Шаг 5: Подтвердить тип спарклайн, прочитав group.Type
console.log("Sparkline Type added: " + group.getType());
// Шаг 6: Сохранить книгу
workbook.save("output_column.xlsx");
console.log("Workbook saved as output_column.xlsx");
Спарклайн победа/поражение — это особый вариант столбцового спарклайна, предназначенный для отображения только двух исходов: положительное значение отображается как полоса вверх (победа), а нулевое или отрицательное значение — как полоса вниз (поражение). Спарклайны победа/поражение обычно используются для визуализации последовательностей побед и поражений, результатов «прошёл/не прошёл» или любого бинарного исхода во времени.
В Aspose.Cells спарклайн победа/поражение создаётся путём передачи SparklineType.Stacked в метод SparklineGroups.add. (Несмотря на название, SparklineType.Stacked — это значение перечисления, используемое для запроса отображения победа/поражение.)
Workbook и получите доступ к первому рабочему листу.CellArea, описывающий ячейку назначения.worksheet.SparklineGroups.add(SparklineType.Stacked, "A1:E1", false, dest).SparklineGroup, например задав акцентные цвета для полос победы и поражения.let workbook = new AsposeCells.Workbook();
let worksheet = workbook.getWorksheets().get(0);
worksheet.setName("WinLoss");
// Шаг 2: Заполнение образцов данных в строке 1: A1=5, B1=-3, C1=8, D1=-2, E1=6
worksheet.getCells().get("A1").putValue(5);
worksheet.getCells().get("B1").putValue(-3);
worksheet.getCells().get("C1").putValue(8);
worksheet.getCells().get("D1").putValue(-2);
worksheet.getCells().get("E1").putValue(6);
// Шаг 3: Создание CellArea, указывающей на F1 (столбец 5, строка 0)
let dest = new AsposeCells.CellArea();
dest.setStartColumn(5); // F
dest.setEndColumn(5);
dest.setStartRow(0); // строка 1
dest.setEndRow(0);
// Шаг 4: Добавление спарклайна Win/Loss (SparklineType.Stacked)
let groupIndex = worksheet.getSparklineGroups().add(
AsposeCells.SparklineType.Stacked,
"A1:E1",
false,
dest
);
let group = worksheet.getSparklineGroups().get(groupIndex);
// Шаг 5: Настройка группы спарклайнов
// Включение маркеров верхних и нижних точек
group.setShowHighPoint(true);
group.setShowLowPoint(true);
group.setShowNegativePoints(true);
// Установка зеленого цвета для верхних точек
let highColor = workbook.createCellsColor();
highColor.setColor(AsposeCells.Color.getGreen());
group.setHighPointColor(highColor);
// Установка красного цвета для нижних точек
let lowColor = workbook.createCellsColor();
lowColor.setColor(AsposeCells.Color.getRed());
group.setLowPointColor(lowColor);
// Установка оранжевого цвета для отрицательных точек
let negColor = workbook.createCellsColor();
negColor.setColor(AsposeCells.Color.getOrange());
group.setNegativePointsColor(negColor);
// Установка цвета серии по умолчанию (используется для положительных столбцов)
let seriesColor = workbook.createCellsColor();
seriesColor.setColor(AsposeCells.Color.getSteelBlue());
group.setSeriesColor(seriesColor);
// Шаг 6: Сохранение книги
workbook.save("output_winloss.xlsx");
console.log("Workbook saved successfully: output_winloss.xlsx");
В следующем комбинированном примере создаётся одна рабочая книга, в строке 1 записываются значения 5, -3, 8, -2, 6, после чего добавляются три группы спарклайнов в ячейки F1, F2 и F3 — по одной каждого типа — чтобы полученный файл демонстрировал все три стиля спарклайнов одновременно.
let workbook = new AsposeCells.Workbook();
let worksheet = workbook.getWorksheets().get(0);
// Шаг 2: Заполнение образца данных в строке 1 (A1:E1)
worksheet.getCells().get("A1").putValue(5);
worksheet.getCells().get("B1").putValue(-3);
worksheet.getCells().get("C1").putValue(8);
worksheet.getCells().get("D1").putValue(-2);
worksheet.getCells().get("E1").putValue(6);
// Шаг 3: Добавление группы спарклайнов «Линия» в F1
let lineArea = new AsposeCells.CellArea();
lineArea.setStartColumn(5);
lineArea.setEndColumn(5);
lineArea.setStartRow(0);
lineArea.setEndRow(0);
let lineIdx = worksheet.getSparklineGroups().add(AsposeCells.SparklineType.Line, "A1:E1", false, lineArea);
let lineGroup = worksheet.getSparklineGroups().get(lineIdx);
// Настройка цвета спарклайна «Линия» через CellsColor
let lineColor = workbook.createCellsColor();
lineColor.setColor(AsposeCells.Color.getBlue());
lineGroup.setSeriesColor(lineColor);
// Шаг 4: Добавление группы спарклайнов «Столбец» в F2
let columnArea = new AsposeCells.CellArea();
columnArea.setStartColumn(5);
columnArea.setEndColumn(5);
columnArea.setStartRow(1);
columnArea.setEndRow(1);
let columnIdx = worksheet.getSparklineGroups().add(AsposeCells.SparklineType.Column, "A1:E1", false, columnArea);
let columnGroup = worksheet.getSparklineGroups().get(columnIdx);
// Настройка цвета серии спарклайна «Столбец»
let columnColor = workbook.createCellsColor();
columnColor.setColor(AsposeCells.Color.getGreen());
columnGroup.setSeriesColor(columnColor);
// Шаг 5: Добавление группы спарклайнов «Выигрыш/Проигрыш» (Стопочная) в F3
let stackedArea = new AsposeCells.CellArea();
stackedArea.setStartColumn(5);
stackedArea.setEndColumn(5);
stackedArea.setStartRow(2);
stackedArea.setEndRow(2);
let stackedIdx = worksheet.getSparklineGroups().add(AsposeCells.SparklineType.Stacked, "A1:E1", false, stackedArea);
let stackedGroup = worksheet.getSparklineGroups().get(stackedIdx);
// Настройка цвета серии спарклайна «Выигрыш/Проигрыш»
let stackedColor = workbook.createCellsColor();
stackedColor.setColor(AsposeCells.Color.getDarkOrange());
stackedGroup.setSeriesColor(stackedColor);
// Шаг 6: Сохранение книги
workbook.save("output_all.xlsx");
После создания объекта SparklineGroup и его добавления в worksheet.SparklineGroups можно прочитать или изменить несколько его визуальных свойств перед сохранением рабочей книги. Наиболее часто настраиваемыми свойствами являются:
group.Type — тип SparklineType (Line, Column или Stacked). Он задаётся при добавлении группы, но можно прочитать его обратно для подтверждения.group.Line.Color — цвет линии, представленный объектом CellsColor, созданным с помощью workbook.createCellsColor(). Это свойство используется для задания цвета обводки линейного спарклайна.group.Line.Weight — толщина линии в пунктах. Бо́льшие значения дают более толстые линии.CellsColor и присваивайте его соответствующему свойству. Не присваивайте java.awt.Color напрямую свойствам цвета спарклайна — они ожидают тип CellsColor из com.aspose.cells.Drawing. Сам метод SparklineGroups.add возвращает полностью типизированный объект SparklineGroup, поэтому можно либо объединять присваивания свойств в цепочку на возвращаемом значении, либо сохранить его в локальную переменную и настроить перед сохранением.Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.