Ось дат

Возможные сценарии использования

Когда вы создаете диаграмму из данных рабочего листа, в котором используются даты, и даты нанесены вдоль горизонтальной оси (категории) на диаграмме, Aspose.cells автоматически меняет ось категорий на ось дат (временная шкала). Ось дат отображает даты в хронологическом порядке с определенными интервалами или базовыми единицами, такими как количество дней, месяцев или лет, даже если даты на листе не расположены в последовательном порядке или в одних и тех же базовых единицах. По умолчанию Aspose.cells определяет базовые единицы для оси дат на основе наименьшей разницы между любыми двумя датами в данных рабочего листа. Например, если у вас есть данные о ценах на акции, в которых наименьшая разница между датами составляет семь дней, Excel устанавливает базовую единицу в днях, но вы можете изменить базовую единицу на месяцы или годы, если хотите увидеть динамику акций за период. более длительный период времени.

Обрабатывать ось даты, например Microsoft Excel

См. следующий пример кода, который создает новый файл Excel и помещает значения диаграммы на первый рабочий лист. Затем мы добавляем диаграмму и устанавливаем типОсь  кшкала времени а затем установите базовые единицы в Дни.

дело:изображение_альтернативный_текст

Образец кода

// Create an instance of Workbook
Workbook workbook = new Workbook();
// Get the first worksheet
Worksheet worksheet = workbook.Worksheets[0];
// Add the sample values to cells
worksheet.Cells["A1"].PutValue("Date");
// 14 means datetime format
Style style = worksheet.Cells.Style;
style.Number = 14;
// Put values to cells for creating chart
worksheet.Cells["A2"].SetStyle(style);
worksheet.Cells["A2"].PutValue(new DateTime(2022, 6, 26));
worksheet.Cells["A3"].SetStyle(style);
worksheet.Cells["A3"].PutValue(new DateTime(2022, 5, 22));
worksheet.Cells["A4"].SetStyle(style);
worksheet.Cells["A4"].PutValue(new DateTime(2022, 8, 3));
worksheet.Cells["B1"].PutValue("Price");
worksheet.Cells["B2"].PutValue(40);
worksheet.Cells["B3"].PutValue(50);
worksheet.Cells["B4"].PutValue(60);
// Adda chart to the worksheet
int chartIndex = worksheet.Charts.Add(Aspose.Cells.Charts.ChartType.Column, 9, 6, 21, 13);
// Access the instance of the newly added chart
Aspose.Cells.Charts.Chart chart = worksheet.Charts[chartIndex];
// Add SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B4"
chart.SetChartDataRange("A1:B4", true);
// Set the Axis type to Date time
chart.CategoryAxis.CategoryType = CategoryType.TimeScale;
// Set the base unit for CategoryAxis to days
chart.CategoryAxis.BaseUnitScale = TimeUnit.Days;
// Set the direction for the axis text to be vertical
chart.CategoryAxis.TickLabels.DirectionType = ChartTextDirectionType.Vertical;
// Fill the PlotArea area with nothing
chart.PlotArea.Area.FillFormat.FillType = FillType.None;
// Set max value of Y axis.
chart.ValueAxis.MaxValue = 70;
// Set major unit.
chart.ValueAxis.MajorUnit = 10;
// Save the file
workbook.Save("DateAxis.xlsx");
view raw DateAxis.cs hosted with ❤ by GitHub