Travailler avec ChartSeries
Aspose.Words permet aux utilisateurs de travailler avec ChartSeriesCollection de plusieurs manières.
Travailler avec ChartSeriesCollection du graphique
Examinons la collection ChartSeries. Toutes les séries de graphiques sont disponibles via ChartSeriesCollection:
For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
// Get chart series collection. | |
System::SharedPtr<ChartSeriesCollection> seriesColl = chart->get_Series(); | |
// Check series count. | |
std::cout << seriesColl->get_Count() << std::endl; |
Travailler avec une seule classe ChartSeries
Voici comment travailler avec une série particulière:
For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
// Get first series. | |
System::SharedPtr<ChartSeries> series0 = shape->get_Chart()->get_Series()->idx_get(0); | |
// Get second series. | |
System::SharedPtr<ChartSeries> series1 = shape->get_Chart()->get_Series()->idx_get(1); | |
// Change first series name. | |
series0->set_Name(u"My Name1"); | |
// Change second series name. | |
series1->set_Name(u"My Name2"); | |
// You can also specify whether the line connecting the points on the chart shall be smoothed using Catmull-Rom splines. | |
series0->set_Smooth(true); | |
series1->set_Smooth(true); |
Veuillez voir le résultat ci-dessous:
Tous les ChartSeries simples ont des options ChartDataPoint par défaut, veuillez essayer d’utiliser le code suivant pour les modifier:
For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
// Specifies whether by default the parent element shall inverts its colors if the value is negative. | |
series0->set_InvertIfNegative(true); | |
// Set default marker symbol and size. | |
series0->get_Marker()->set_Symbol(MarkerSymbol::Circle); | |
series0->get_Marker()->set_Size(15); | |
series1->get_Marker()->set_Symbol(MarkerSymbol::Star); | |
series1->get_Marker()->set_Size(10); |
Comment travailler avec un seul ChartDataPoint d’un ChartSeries
En utilisant ChartDataPoint, vous pouvez personnaliser la mise en forme d’un seul point de données de la série de graphiques:
For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
// The path to the documents directory. | |
System::String outputDataDir = GetOutputDataDir_WorkingWithCharts(); | |
System::SharedPtr<Document> doc = System::MakeObject<Document>(); | |
System::SharedPtr<DocumentBuilder> builder = System::MakeObject<DocumentBuilder>(doc); | |
System::SharedPtr<Shape> shape = builder->InsertChart(ChartType::Line, 432, 252); | |
System::SharedPtr<Chart> chart = shape->get_Chart(); | |
// Get first series. | |
System::SharedPtr<ChartSeries> series0 = shape->get_Chart()->get_Series()->idx_get(0); | |
// Get second series. | |
System::SharedPtr<ChartSeries> series1 = shape->get_Chart()->get_Series()->idx_get(1); | |
System::SharedPtr<ChartDataPointCollection> dataPointCollection = series0->get_DataPoints(); | |
// Set explosion. | |
dataPointCollection->idx_get(0)->set_Explosion(50); | |
// Set marker symbol and size. | |
dataPointCollection->idx_get(0)->get_Marker()->set_Symbol(MarkerSymbol::Circle); | |
dataPointCollection->idx_get(0)->get_Marker()->set_Size(15); | |
dataPointCollection->idx_get(1)->get_Marker()->set_Symbol(MarkerSymbol::Diamond); | |
dataPointCollection->idx_get(1)->get_Marker()->set_Size(20); | |
// Add data point to the third point of the second series. | |
series1->get_DataPoints()->idx_get(2)->set_InvertIfNegative(true); | |
series1->get_DataPoints()->idx_get(2)->get_Marker()->set_Symbol(MarkerSymbol::Star); | |
series1->get_DataPoints()->idx_get(2)->get_Marker()->set_Size(20); | |
System::String outputPath = outputDataDir + u"WorkWithSingleChartDataPoint.docx"; | |
doc->Save(outputPath); |
Veuillez voir le résultat ci-dessous: