Bagan adalah alat yang sangat baik untuk menampilkan data secara ringkas. Selain itu, mereka mewakili data secara visual, membuatnya lebih mudah untuk mengkonsumsi data dalam jumlah besar. Anda mungkin menemukan bagan berguna dalam situasi di mana Anda perlu menampilkan data seperti perbandingan anggaran bulanan atau tingkat adopsi produk. Sehubungan dengan itu, artikel ini akan mengajarkan Anda cara membuat bagan dalam file Excel menggunakan C++.
- C++ API untuk Membuat Bagan Excel
- Buat Bagan Garis di Excel menggunakan C++
- Membuat Bagan Piramida di Excel menggunakan C++
- Buat Bagan Gelembung di Excel menggunakan C++
- Bagan yang Didukung Tambahan
- Dapatkan Lisensi Gratis
C++ API untuk Membuat Bagan Excel
Aspose.Cells for C++ adalah pustaka C++ asli yang memungkinkan Anda membuat, membaca, dan memodifikasi file Excel tanpa memerlukan penginstalan Microsoft Excel. API juga mendukung pembuatan bagan dalam file Excel. Anda dapat menginstal API melalui NuGet atau mengunduhnya langsung dari bagian Unduhan.
PM> Install-Package Aspose.Cells.Cpp
Buat Bagan Garis di Excel menggunakan C++
Untuk membuat bagan garis, gunakan nilai enum ChartTypeLine sambil menambahkan bagan. Berikut adalah langkah-langkah untuk membuat diagram garis dalam file Excel.
- Pertama, buat instance dari kelas IWorkbook.
- Ambil lembar kerja tempat Anda ingin menambahkan bagan menggunakan metode IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32).
- Masukkan data untuk bagan.
- Tambahkan bagan ke lembar kerja menggunakan IWorksheet->GetICharts()->Add (Aspose::Cells::Charts::ChartType type,Aspose::Cells::Systems::Int32 upperLeftRow, Aspose::Cells::Systems ::Int32 upperLeftColumn, Aspose::Cells::Systems::Int32 lowerRightRow, Aspose::Cells::Systems::Int32 lowerRightColumn) metode.
- Akses bagan dengan indeksnya menggunakan metode IWorksheet->GetICharts()->GetObjectByIndex (Aspose::Cells::Systems::Int32).
- Tambahkan sumber data untuk bagan menggunakan IChart->GetNISeries()->Add (intrusiveptrAspose::Cells::Systems::String area, metode bool isVertical).
- Terakhir, simpan file Excel menggunakan IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String fileName) metode.
Berikut ini adalah contoh kode untuk membuat diagram garis di Excel menggunakan C++.
// Jalur direktori keluaran.
StringPtr outDir = new String("OutputDirectory\\");
// Jalur file excel keluaran
StringPtr outputChartTypeLine = outDir->StringAppend(new String("outputChartTypeLine.xlsx"));
// Buat buku kerja baru
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();
// Dapatkan lembar kerja pertama yang dibuat secara default
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Menambahkan nilai sampel ke sel
worksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue(50);
worksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue(100);
worksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue(150);
worksheet->GetICells()->GetObjectByIndex(new String("B1"))->PutValue(4);
worksheet->GetICells()->GetObjectByIndex(new String("B2"))->PutValue(20);
worksheet->GetICells()->GetObjectByIndex(new String("B3"))->PutValue(50);
// Menambahkan grafik ke lembar kerja
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Line, 5, 0, 20, 8);
// Mengakses contoh bagan yang baru ditambahkan
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);
// Menambahkan SeriesCollection (sumber data bagan) ke bagan mulai dari sel "A1" hingga "B3"
chart->GetNISeries()->Add(new String("A1:B3"), true);
// Menyimpan file Excel
workbook->Save(outputChartTypeLine);
Membuat Bagan Piramida di Excel menggunakan C++
Untuk membuat bagan piramida, gunakan nilai enum ChartTypePyramid untuk menentukan jenis bagan sambil menambahkan bagan. Berikut ini adalah langkah-langkah untuk membuat bagan piramida dalam file Excel.
- Pertama, buat instance dari kelas IWorkbook.
- Ambil lembar kerja tempat Anda ingin menambahkan bagan menggunakan metode IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32).
- Masukkan data untuk bagan.
- Tambahkan bagan ke lembar kerja menggunakan IWorksheet->GetICharts()->Add (Aspose::Cells::Charts::ChartType type,Aspose::Cells::Systems::Int32 upperLeftRow, Aspose::Cells::Systems ::Int32 upperLeftColumn, Aspose::Cells::Systems::Int32 lowerRightRow, Aspose::Cells::Systems::Int32 lowerRightColumn) metode.
- Akses bagan dengan indeksnya menggunakan metode IWorksheet->GetICharts()->GetObjectByIndex (Aspose::Cells::Systems::Int32).
- Tambahkan sumber data untuk bagan menggunakan IChart->GetNISeries()->Add (intrusiveptrAspose::Cells::Systems::String area, metode bool isVertical).
- Terakhir, simpan file Excel menggunakan IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String fileName) metode.
Berikut ini adalah contoh kode untuk membuat diagram piramida di Excel menggunakan C++.
// Jalur direktori keluaran.
StringPtr outDir = new String("OutputDirectory\\");
// Jalur file excel keluaran
StringPtr outputChartTypePyramid = outDir->StringAppend(new String("outputChartTypePyramid.xlsx"));
// Buat buku kerja baru
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();
// Dapatkan lembar kerja pertama yang dibuat secara default
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Menambahkan nilai sampel ke sel
worksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue(50);
worksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue(100);
worksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue(150);
worksheet->GetICells()->GetObjectByIndex(new String("B1"))->PutValue(4);
worksheet->GetICells()->GetObjectByIndex(new String("B2"))->PutValue(20);
worksheet->GetICells()->GetObjectByIndex(new String("B3"))->PutValue(50);
// Menambahkan grafik ke lembar kerja
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Pyramid, 5, 0, 20, 8);
// Mengakses contoh bagan yang baru ditambahkan
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);
// Menambahkan SeriesCollection (sumber data bagan) ke bagan mulai dari sel "A1" hingga "B3"
chart->GetNISeries()->Add(new String("A1:B3"), true);
// Menyimpan file Excel
workbook->Save(outputChartTypePyramid);
Buat Bagan Gelembung di Excel menggunakan C++
Untuk membuat bagan gelembung, teruskan nilai enum ChartTypeBubble ke metode IWorksheet->GetICharts()->Add(). Berikut ini adalah langkah-langkah untuk membuat bagan gelembung di file Excel.
- Pertama, buat instance dari kelas IWorkbook.
- Ambil lembar kerja tempat Anda ingin menambahkan bagan menggunakan metode IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32).
- Masukkan data untuk bagan.
- Tambahkan bagan ke lembar kerja menggunakan IWorksheet->GetICharts()->Add (Aspose::Cells::Charts::ChartType type,Aspose::Cells::Systems::Int32 upperLeftRow, Aspose::Cells::Systems ::Int32 upperLeftColumn, Aspose::Cells::Systems::Int32 lowerRightRow, Aspose::Cells::Systems::Int32 lowerRightColumn) metode.
- Akses bagan dengan indeksnya menggunakan metode IWorksheet->GetICharts()->GetObjectByIndex (Aspose::Cells::Systems::Int32).
- Tambahkan sumber data, ukuran gelembung, nilai X, dan nilai Y untuk bagan menggunakan IChart->GetNISeries()->Add (intrusiveptrAspose::Cells::Systems::String area, bool isVertical), IChart->GetNISeries()->GetObjectByIndex(0)->SetBubbleSizes (intrusiveptrAspose::Cells::Systems::String nilai), IChart->GetNISeries()->GetObjectByIndex(0)->SetXValues (intrusiveptrAspose::Cells::Systems::String nilai), IChart->GetNISeries()->GetObjectByIndex(0)->SetValues (intrusiveptrAspose::Cells::Systems::String value) metode masing-masing.
- Terakhir, simpan file Excel menggunakan IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String fileName) metode.
Berikut ini adalah contoh kode untuk membuat bubble chart di Excel menggunakan C++.
// Jalur direktori keluaran.
StringPtr outDir = new String("OutputDirectory\\");
// Jalur file excel keluaran
StringPtr outputChartTypeBubble = outDir->StringAppend(new String("outputChartTypeBubble.xlsx"));
// Buat buku kerja baru
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();
// Dapatkan lembar kerja pertama yang dibuat secara default
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Isi data untuk rangkaian grafik
// Nilai Y
worksheet->GetICells()->GetObjectByIndex(0, 0)->PutValue((StringPtr)new String("Nilai Y"));
worksheet->GetICells()->GetObjectByIndex(0, 1)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(0, 2)->PutValue(4);
worksheet->GetICells()->GetObjectByIndex(0, 3)->PutValue(6);
// Ukuran Gelembung
worksheet->GetICells()->GetObjectByIndex(1, 0)->PutValue((StringPtr)new String("Ukuran Gelembung"));
worksheet->GetICells()->GetObjectByIndex(1, 1)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(1, 2)->PutValue(3);
worksheet->GetICells()->GetObjectByIndex(1, 3)->PutValue(1);
// Nilai X
worksheet->GetICells()->GetObjectByIndex(2, 0)->PutValue((StringPtr)new String("Nilai X"));
worksheet->GetICells()->GetObjectByIndex(2, 1)->PutValue(1);
worksheet->GetICells()->GetObjectByIndex(2, 2)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(2, 3)->PutValue(3);
// Tetapkan lebar kolom pertama
worksheet->GetICells()->SetColumnWidth(0, 12);
// Menambahkan grafik ke lembar kerja
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Bubble, 5, 0, 20, 8);
// Mengakses contoh bagan yang baru ditambahkan
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);
// Menambahkan SeriesCollection (sumber data bagan) ke bagan mulai dari B1 hingga D1
chart->GetNISeries()->Add(new String("B1:D1"), true);
// Atur ukuran gelembung
chart->GetNISeries()->GetObjectByIndex(0)->SetBubbleSizes(new String("B2:D2"));
// Tetapkan nilai sumbu X
chart->GetNISeries()->GetObjectByIndex(0)->SetXValues(new String("B3:D3"));
// Tetapkan nilai sumbu Y
chart->GetNISeries()->GetObjectByIndex(0)->SetValues(new String("B1:D1"));
// Menyimpan file Excel
workbook->Save(outputChartTypeBubble);
Bagan yang Didukung Tambahan
Selain bagan yang ditunjukkan di atas, Aspose.Cells for C++ mendukung banyak jenis bagan tambahan. Anda dapat melihat daftar lengkap grafik yang didukung dengan melihat nilai enum ChartType.
Dapatkan Lisensi Gratis
Anda dapat mencoba API tanpa batasan evaluasi dengan meminta lisensi sementara gratis.
Kesimpulan
Pada artikel ini, Anda telah mempelajari cara membuat bagan di spreadsheet Excel menggunakan C++. Khususnya, Anda telah melihat cara membuat bagan Garis, Piramida, dan Gelembung menggunakan Aspose.Cells for C++ API. Selain itu, Anda telah melihat bahwa API mendukung banyak bagan lain yang dapat Anda buat di file Excel Anda. Selain bagan, API menyediakan banyak fitur tambahan untuk bekerja dengan file Excel. Anda dapat menjelajahi API secara mendetail dengan mengunjungi dokumentasi resmi. Jika ada pertanyaan, jangan ragu untuk menghubungi kami di forum dukungan gratis.