צור תרשימי Excel C++

תרשימים הם כלי מצוין להצגת נתונים תמציתית. יתרה מכך, הם מייצגים את הנתונים בצורה ויזואלית, מה שמקל על צריכת כמויות גדולות של נתונים. ייתכן שתמצא תרשימים מועילים במצבים שבהם אתה צריך להציג נתונים כגון השוואת התקציב החודשי או שיעור אימוץ המוצר. לאור זאת, מאמר זה ילמד אותך כיצד ליצור תרשימים בקבצי אקסל באמצעות C++.

C++ API ליצירת תרשימי Excel

Aspose.Cells for C++ היא ספריית C++ מקורית המאפשרת לך ליצור, לקרוא ולשנות קובצי Excel מבלי לדרוש התקנת Microsoft Excel. ה-API תומך גם ביצירת תרשימים בקבצי Excel. אתה יכול להתקין את ה-API דרך NuGet או להוריד אותו ישירות מהקטע הורדות.

PM> Install-Package Aspose.Cells.Cpp

צור תרשים קווים ב-Excel באמצעות C++

כדי ליצור תרשים קווים, השתמש בערך ה-ChartTypeLine בעת הוספת התרשים. להלן השלבים ליצירת תרשים קו בקובץ Excel.

להלן הקוד לדוגמה ליצירת תרשים קווים ב-Excel באמצעות C++.

// נתיב ספריית פלט.
StringPtr outDir = new String("OutputDirectory\\");

// נתיב פלט קובץ אקסל
StringPtr outputChartTypeLine = outDir->StringAppend(new String("outputChartTypeLine.xlsx"));

// צור חוברת עבודה חדשה
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();

// קבל גליון עבודה ראשון שנוצר כברירת מחדל
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// הוספת ערכים לדוגמה לתאים
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);

// הוספת תרשים לגליון העבודה
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Line, 5, 0, 20, 8);

// גישה למופע של התרשים החדש שנוסף
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);

// הוספת SeriesCollection (מקור נתונים בתרשים) לתרשים החל מתא "A1" ועד "B3"
chart->GetNISeries()->Add(new String("A1:B3"), true);

// שמירת קובץ האקסל
workbook->Save(outputChartTypeLine);
תרשים קווים

תרשים קווים שנוצר על ידי הקוד לדוגמה

יצירת תרשים פירמידה באקסל באמצעות C++

ליצירת תרשים פירמידה, השתמש בערך ה-ChartTypePyramid כדי לציין את סוג התרשים בזמן הוספת התרשים. להלן השלבים ליצירת תרשים פירמידה בקובץ אקסל.

להלן הקוד לדוגמה ליצירת תרשים פירמידה ב-Excel באמצעות C++.

// נתיב ספריית פלט.
StringPtr outDir = new String("OutputDirectory\\");

// נתיב פלט קובץ אקסל
StringPtr outputChartTypePyramid = outDir->StringAppend(new String("outputChartTypePyramid.xlsx"));

// צור חוברת עבודה חדשה
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();

// קבל גליון עבודה ראשון שנוצר כברירת מחדל
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// הוספת ערכים לדוגמה לתאים
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);

// הוספת תרשים לגליון העבודה
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Pyramid, 5, 0, 20, 8);

// גישה למופע של התרשים החדש שנוסף
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);

// הוספת SeriesCollection (מקור נתונים בתרשים) לתרשים החל מתא "A1" ועד "B3"
chart->GetNISeries()->Add(new String("A1:B3"), true);

// שמירת קובץ האקסל
workbook->Save(outputChartTypePyramid);
תרשים פירמידה

תרשים פירמידה שנוצר על ידי הקוד לדוגמה

צור תרשים בועות ב-Excel באמצעות C++

על מנת ליצור תרשים בועות, העבירו את ערך ה-ChartTypeBubble לשיטת IWorksheet->GetICharts()->Add(). להלן השלבים ליצירת תרשים בועות בקובץ Excel.

להלן הקוד לדוגמה ליצירת תרשים בועות ב-Excel באמצעות C++.

// נתיב ספריית פלט.
StringPtr outDir = new String("OutputDirectory\\");

// נתיב פלט קובץ אקסל
StringPtr outputChartTypeBubble = outDir->StringAppend(new String("outputChartTypeBubble.xlsx"));

// צור חוברת עבודה חדשה
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();

// קבל גליון עבודה ראשון שנוצר כברירת מחדל
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// מלא נתונים עבור סדרת התרשים
// ערכי Y
worksheet->GetICells()->GetObjectByIndex(0, 0)->PutValue((StringPtr)new String("ערכי Y"));
worksheet->GetICells()->GetObjectByIndex(0, 1)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(0, 2)->PutValue(4);
worksheet->GetICells()->GetObjectByIndex(0, 3)->PutValue(6);
// גודל בועה
worksheet->GetICells()->GetObjectByIndex(1, 0)->PutValue((StringPtr)new String("גודל בועה"));
worksheet->GetICells()->GetObjectByIndex(1, 1)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(1, 2)->PutValue(3);
worksheet->GetICells()->GetObjectByIndex(1, 3)->PutValue(1);
// X ערכים
worksheet->GetICells()->GetObjectByIndex(2, 0)->PutValue((StringPtr)new String("X ערכים"));
worksheet->GetICells()->GetObjectByIndex(2, 1)->PutValue(1);
worksheet->GetICells()->GetObjectByIndex(2, 2)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(2, 3)->PutValue(3);

// הגדר את רוחב העמודה הראשונה
worksheet->GetICells()->SetColumnWidth(0, 12);

// הוספת תרשים לגליון העבודה
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Bubble, 5, 0, 20, 8);

// גישה למופע של התרשים החדש שנוסף
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);

// הוספת SeriesCollection (מקור נתונים בתרשים) לתרשים הנע בין B1 ל-D1
chart->GetNISeries()->Add(new String("B1:D1"), true);

// הגדר גדלים של בועות
chart->GetNISeries()->GetObjectByIndex(0)->SetBubbleSizes(new String("B2:D2"));

// הגדר ערכי ציר X
chart->GetNISeries()->GetObjectByIndex(0)->SetXValues(new String("B3:D3"));

// הגדר ערכי ציר Y
chart->GetNISeries()->GetObjectByIndex(0)->SetValues(new String("B1:D1"));

// שמירת קובץ האקסל
workbook->Save(outputChartTypeBubble);
תרשים בועות

תרשים בועות שנוצר על ידי הקוד לדוגמה

תרשימים נתמכים נוספים

מלבד התרשימים המוצגים למעלה, Aspose.Cells עבור C++ תומך בסוגי תרשימים רבים נוספים. אתה יכול להציג את הרשימה המלאה של תרשימים נתמכים על-ידי הצגת ערכי ה-ChartType.

קבל רישיון חינם

אתה יכול לנסות את ה-API ללא מגבלות הערכה על ידי בקשת [רישיון זמני בחינם].30

סיכום

במאמר זה, למדת כיצד ליצור תרשימים בגיליונות אלקטרוניים של Excel באמצעות C++. באופן ספציפי, ראית כיצד ליצור תרשימי קווים, פירמידה ובועה באמצעות Aspose.Cells עבור C++ API. יתר על כן, ראית שה-API תומך במספר רב של תרשימים אחרים שאתה יכול ליצור בקבצי Excel שלך. מלבד תרשימים, ה-API מספק תכונות נוספות רבות לעבודה עם קבצי Excel. אתה יכול לחקור את ה-API בפירוט על ידי ביקור בתיעוד הרשמי. בכל שאלה, אנא אל תהסס לפנות אלינו בפורום התמיכה החינמי שלנו.

ראה גם