Ось X Против. Ось категорий

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

Существуют различные типы осей X. В то время как ось Y является осью типа значения, ось X может быть осью типа категории или осью типа значения. Используя ось значений, данные обрабатываются как постоянно изменяющиеся числовые данные, а маркер помещается в точку вдоль оси, которая изменяется в соответствии с его числовым значением. При использовании оси категорий данные обрабатываются как последовательность нечисловых текстовых меток, а маркер размещается в точке вдоль оси в соответствии с его положением в последовательности. Пример ниже иллюстрирует разницу между осями значений и категорий. Наши образцы данных показаны например файла таблицы ниже. Первый столбец содержит данные оси X, которые можно рассматривать как категории или значения. Обратите внимание, что числа не расположены через равные промежутки и даже не расположены в порядке номеров.

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

Обработка оси X и категории, например Microsoft Excel

Мы будем отображать эти данные на двух типах диаграмм: первая диаграмма — XY (точечная) диаграмма X в качестве оси значений, вторая диаграмма — линейная диаграмма X в качестве оси категорий.

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

Образец кода

// Create an instance of Workbook
Workbook workbook = new Workbook();
// Access the first worksheet.
Worksheet worksheet = workbook.Worksheets[0];
// Put the sample values used in charts
worksheet.Cells["A2"].PutValue(1);
worksheet.Cells["A3"].PutValue(3);
worksheet.Cells["A4"].PutValue(2.5);
worksheet.Cells["A5"].PutValue(3.5);
worksheet.Cells["B1"].PutValue("Cats");
worksheet.Cells["C1"].PutValue("Dogs");
worksheet.Cells["D1"].PutValue("Fishes");
worksheet.Cells["B2"].PutValue(7);
worksheet.Cells["B3"].PutValue(6);
worksheet.Cells["B4"].PutValue(5);
worksheet.Cells["B5"].PutValue(4);
worksheet.Cells["C2"].PutValue(7);
worksheet.Cells["C3"].PutValue(5);
worksheet.Cells["C4"].PutValue(4);
worksheet.Cells["C5"].PutValue(3);
worksheet.Cells["D2"].PutValue(8);
worksheet.Cells["D3"].PutValue(7);
worksheet.Cells["D4"].PutValue(3);
worksheet.Cells["D5"].PutValue(2);
//Create Line Chart: X as Category Axis
int pieIdx = worksheet.Charts.Add(ChartType.LineWithDataMarkers, 6, 15, 20, 21);
// Retrieve the Chart object
Chart chart = worksheet.Charts[pieIdx];
// Add Series
chart.NSeries.Add("B2:D5", true);
// Set the category data
chart.NSeries.CategoryData = "=Sheet1!$A$2:$A$5";
// Set the first series mame
chart.NSeries[0].Name = "Cats";
// Set the second series mame
chart.NSeries[1].Name = "Dogs";
// Set the third series mame
chart.NSeries[2].Name = "Fishes";
// Set the Legend at the bottom of the chart area
chart.Legend.Position = LegendPositionType.Bottom;
// Fill the PlotArea area with nothing
chart.PlotArea.Area.FillFormat.FillType = FillType.None;
// Create XY (Scatter) Chart: X as Value Axis
pieIdx = worksheet.Charts.Add(ChartType.ScatterConnectedByLinesWithDataMarker, 6, 6, 20, 12);
// Retrieve the Chart object
chart = worksheet.Charts[pieIdx];
// Add Series
chart.NSeries.Add("B2:D5", true);
// Set X values for series
chart.NSeries[0].XValues = "{1,3,2.5,3.5}";
chart.NSeries[1].XValues = "{1,3,2.5,3.5}";
chart.NSeries[2].XValues = "{1,3,2.5,3.5}";
// Set the first series mame
chart.NSeries[0].Name = "Cats";
// Set the second series mame
chart.NSeries[1].Name = "Dogs";
// Set the third series mame
chart.NSeries[2].Name = "Fishes";
// Set the Legend at the bottom of the chart area
chart.Legend.Position = LegendPositionType.Bottom;
// Fill the PlotArea area with nothing
chart.PlotArea.Area.FillFormat.FillType = FillType.None;
// Save the Excel file
workbook.Save("XAxis.xlsx");