만들기 OOXML 처음부터 차트
만들기 OOXML 처음부터 차트를 사용하여 Aspose.Words
Aspose.Words 제공 InsertChart
에 추가 된 방법 DocumentBuilder
수업 따라서 다음을 사용하여 간단한 세로 막대형 차트를 문서에 삽입하는 방법을 살펴 보겠습니다 DocumentBuilder->InsertChart
방법:
세로 막대형 차트를 삽입하는 방법
아래의 코드 예제에서는 세로 막대형 차트를 삽입하는 방법을 보여 줍니다.
For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
System::SharedPtr<Document> doc = System::MakeObject<Document>(); | |
System::SharedPtr<DocumentBuilder> builder = System::MakeObject<DocumentBuilder>(doc); | |
// Add chart with default data. You can specify different chart types and sizes. | |
System::SharedPtr<Shape> shape = builder->InsertChart(ChartType::Column, 432, 252); | |
// Chart property of Shape contains all chart related options. | |
System::SharedPtr<Chart> chart = shape->get_Chart(); | |
// Get chart series collection. | |
System::SharedPtr<ChartSeriesCollection> seriesColl = chart->get_Series(); | |
// Check series count. | |
std::cout << seriesColl->get_Count() << std::endl; | |
// Delete default generated series. | |
seriesColl->Clear(); | |
// Create category names array, in this example we have two categories. | |
System::ArrayPtr<System::String> categories = System::MakeArray<System::String>({u"AW Category 1", u"AW Category 2"}); | |
// Adding new series. Please note, data arrays must not be empty and arrays must be the same size. | |
seriesColl->Add(u"AW Series 1", categories, System::MakeArray<double>({1, 2})); | |
seriesColl->Add(u"AW Series 2", categories, System::MakeArray<double>({3, 4})); | |
seriesColl->Add(u"AW Series 3", categories, System::MakeArray<double>({5, 6})); | |
seriesColl->Add(u"AW Series 4", categories, System::MakeArray<double>({7, 8})); | |
seriesColl->Add(u"AW Series 5", categories, System::MakeArray<double>({9, 10})); | |
System::String outputPath = outputDataDir + u"CreateColumnChart.InsertSimpleColumnChart.doc"; | |
doc->Save(outputPath); |
이 코드는 다음과 같은 결과를 생성합니다:
모든 차트 유형에 대해 가능한 모든 데이터 원본 변형을 포함하도록 노출된 시리즈 추가 메서드에는 네 가지 오버로드가 있습니다:
For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
System::SharedPtr<Document> doc = System::MakeObject<Document>(); | |
System::SharedPtr<DocumentBuilder> builder = System::MakeObject<DocumentBuilder>(doc); | |
// Insert Column chart. | |
System::SharedPtr<Shape> shape = builder->InsertChart(ChartType::Column, 432, 252); | |
System::SharedPtr<Chart> chart = shape->get_Chart(); | |
// Use this overload to add series to any type of Bar, Column, Line and Surface charts. | |
chart->get_Series()->Add(u"AW Series 1", System::MakeArray<System::String>({u"AW Category 1", u"AW Category 2"}), System::MakeArray<double>({1, 2})); | |
System::String outputPath = outputDataDir + u"CreateColumnChart.InsertColumnChart.doc"; | |
doc->Save(outputPath); |
이 코드는 다음과 같은 결과를 생성합니다:
어떻게 InsertScatterChart
아래 코드 예제에서는 분산형 차트를 삽입하는 방법을 보여 줍니다.
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); | |
// Insert Scatter chart. | |
System::SharedPtr<Shape> shape = builder->InsertChart(ChartType::Scatter, 432, 252); | |
System::SharedPtr<Chart> chart = shape->get_Chart(); | |
// Use this overload to add series to any type of Scatter charts. | |
chart->get_Series()->Add(u"AW Series 1", System::MakeArray<double>({0.7, 1.8, 2.6}), System::MakeArray<double>({2.7, 3.2, 0.8})); | |
System::String outputPath = outputDataDir + u"InsertScatterChart.docx"; | |
doc->Save(outputPath); |
이 코드는 다음과 같은 결과를 생성합니다:
영역 차트 삽입 방법
아래 코드 예제에서는 영역 차트를 삽입하는 방법을 보여 줍니다.
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); | |
// Insert Area chart. | |
System::SharedPtr<Shape> shape = builder->InsertChart(ChartType::Area, 432, 252); | |
System::SharedPtr<Chart> chart = shape->get_Chart(); | |
// Use this overload to add series to any type of Area, Radar and Stock charts. | |
chart->get_Series()->Add(u"AW Series 1", | |
System::MakeArray<System::DateTime>({System::DateTime(2002, 5, 1), System::DateTime(2002, 6, 1), System::DateTime(2002, 7, 1), System::DateTime(2002, 8, 1), System::DateTime(2002, 9, 1)}), | |
System::MakeArray<double>({32, 32, 28, 12, 15})); | |
System::String outputPath = outputDataDir + u"TestInsertAreaChart.docx"; | |
doc->Save(outputPath); |
이 코드는 다음과 같은 결과를 생성합니다:
버블 차트 삽입 방법
아래의 코드 예제는 거품형 차트를 삽입하는 방법을 보여줍니다.
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); | |
// Insert Bubble chart. | |
System::SharedPtr<Shape> shape = builder->InsertChart(ChartType::Bubble, 432, 252); | |
System::SharedPtr<Chart> chart = shape->get_Chart(); | |
// Use this overload to add series to any type of Bubble charts. | |
chart->get_Series()->Add(u"AW Series 1", | |
System::MakeArray<double>({0.7, 1.8, 2.6}), | |
System::MakeArray<double>({2.7, 3.2, 0.8}), | |
System::MakeArray<double>({10, 4, 8})); | |
System::String outputPath = outputDataDir + u"InsertBubbleChart.docx"; | |
doc->Save(outputPath); |
이 코드는 다음과 같은 결과를 생성합니다: