Определите, находятся ли данные во второй круговой или столбчатой диаграмме на круговой диаграмме с обрывным или столбчатой диаграмме
Возможные сценарии использования
Вы можете определить, находятся ли точки данных серии во втором круге на диаграмме ‘Круг на круге’ или в столбе диаграммы ‘Столбец на круге’ с помощью Aspose.Cells. Используйте свойство ChartPoint.IsInSecondaryPlot, чтобы определить это.
Пожалуйста, загрузите образец excel-файла, используемый в следующем образце кода, и проверьте его вывод в консоль. Если вы откроете образец excel-файла, вы увидите, что все точки данных, которые меньше 10, находятся внутри столба ‘Столбец на круге’, как показано в выводе консоли.
Определение того, находятся ли точки данных во втором сегменте или в столбце на круговой из кругов или столбчатой из кругов диаграмме
В следующем образце кода показано, как определить, находятся ли точки данных во втором сегменте или в столбце на диаграмме Круговой из кругов или Столбчатая из кругов.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
//Load source excel file containing Bar of Pie chart | |
Workbook wb = new Workbook(dataDir + "PieBars.xlsx"); | |
// Access first worksheet | |
Worksheet ws = wb.Worksheets[0]; | |
// Access first chart which is Bar of Pie chart and calculate it | |
Chart ch = ws.Charts[0]; | |
ch.Calculate(); | |
// Access the chart series | |
Series srs = ch.NSeries[0]; | |
/* | |
* Print the data points of the chart series and | |
* check its IsInSecondaryPlot property to determine | |
* if data point is inside the bar or pie | |
*/ | |
for (int i = 0; i < srs.Points.Count; i++) | |
{ | |
//Access chart point | |
ChartPoint cp = srs.Points[i]; | |
//Skip null values | |
if (cp.YValue == null) | |
continue; | |
/* | |
* Print the chart point value and see if it is inside bar or pie. | |
* If the IsInSecondaryPlot is true, then the data point is inside bar | |
* otherwise it is inside the pie. | |
*/ | |
Console.WriteLine("Value: " + cp.YValue); | |
Console.WriteLine("IsInSecondaryPlot: " + cp.IsInSecondaryPlot); | |
Console.WriteLine(); | |
} |
Вывод в консоль
Пожалуйста, ознакомьтесь с выводом консоли, сгенерированным после выполнения вышеуказанного образца кода с образцом excel-файла. Если IsInSecondaryPlot равно false, то точка данных внутри круга, а если true, то точка данных внутри столба.
Value: 15
IsInSecondaryPlot: False
Value: 9
IsInSecondaryPlot: True
Value: 2
IsInSecondaryPlot: True
Value: 40
IsInSecondaryPlot: False
Value: 5
IsInSecondaryPlot: True
Value: 4
IsInSecondaryPlot: True
Value: 25
IsInSecondaryPlot: False