إنشاء أو تحديث الرسوم البيانية في عرض PowerPoint

نظرة عامة

تصف هذه المقالة كيف يمكن إنشاء رسوم بيانية في عرض PowerPoint باستخدام Java. يمكنك أيضًا تحديث الرسوم البيانية. تغطي هذه الموضوعات.

الرسم البياني: عادي

الرسم البياني: متشتت

الرسم البياني: دائري

الرسم البياني: خريطة شجرية

الرسم البياني: المخزون

الرسم البياني: صندوق وشوكة

الرسم البياني: قمع

الرسم البياني: شمس مركزي

الرسم البياني: هيستوجرام

الرسم البياني: رادار

الرسم البياني: متعدد الفئات

الرسم البياني: خريطة

الإجراء: تحديث الرسم البياني

إنشاء رسم بياني

تساعد الرسوم البيانية الأشخاص على تصور البيانات بسرعة واكتساب رؤى، والتي قد لا تكون واضحة على الفور من جدول أو ورقة حسابات.

لماذا إنشاء الرسوم البيانية؟

باستخدام الرسوم البيانية، يمكنك

  • تجميع أو اختصار أو تلخيص كميات كبيرة من البيانات في شريحة واحدة في عرض تقديمي
  • الكشف عن الأنماط والاتجاهات في البيانات
  • استنتاج الاتجاه والزخم للبيانات مع مرور الوقت أو بالنسبة لوحدة قياس معينة
  • اكتشاف القيم الشاذة والانحرافات والأخطاء والبيانات غير المنطقية، وما إلى ذلك
  • التواصل أو عرض بيانات معقدة

في PowerPoint، يمكنك إنشاء الرسوم البيانية من خلال وظيفة الإدراج، التي توفر قوالب تستخدم لتصميم أنواع متعددة من الرسوم البيانية. باستخدام Aspose.Slides، يمكنك إنشاء رسوم بيانية عادية (استنادًا إلى أنواع الرسوم البيانية الشائعة) ورسوم بيانية مخصصة.

إنشاء رسوم بيانية عادية

خطوات: إنشاء رسم بياني

خطوات الكود:

  1. إنشاء مثيل من فئة Presentation.
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني مع بعض البيانات وتحديد نوع الرسم البياني المفضل لديك.
  4. إضافة عنوان للرسم البياني.
  5. الوصول إلى ورقة بيانات الرسم البياني.
  6. مسح جميع السلاسل والفئات الافتراضية.
  7. إضافة سلاسل وفئات جديدة.
  8. إضافة بعض البيانات الجديدة للرسم البياني لسلسلة الرسم البياني.
  9. إضافة لون تعبئة لسلسلة الرسم البياني.
  10. إضافة تسميات لسلسلة الرسم البياني.
  11. كتابة العرض التقديمي المعدل كملف PPTX.

هذا الكود PHP يوضح لك كيفية إنشاء رسم بياني عادي:

  # ينشئ مثيل لفئة عرض تمثل ملف PPTX
  $pres = new Presentation();
  try {
    # الوصول إلى الشريحة الأولى
    $sld = $pres->getSlides()->get_Item(0);
    # إضافة رسم بياني ببياناته الافتراضية
    $chart = $sld->getShapes()->addChart(ChartType::ClusteredColumn, 0, 0, 500, 500);
    # تعيين عنوان الرسم البياني
    $chart->getChartTitle()->addTextFrameForOverriding("عنوان تجريبي");
    $chart->getChartTitle()->getTextFrameForOverriding()->getTextFrameFormat()->setCenterText(NullableBool::True);
    $chart->getChartTitle()->setHeight(20);
    $chart->hasTitle();
    # تعيين السلسلة الأولى لإظهار القيم
    $chart->getChartData()->getSeries()->get_Item(0)->getLabels()->getDefaultDataLabelFormat()->setShowValue(true);
    # تعيين فهرس ورقة بيانات الرسم البياني
    $defaultWorksheetIndex = 0;
    # الحصول على ورقة عمل بيانات الرسم البياني
    $fact = $chart->getChartData()->getChartDataWorkbook();
    # حذف السلاسل والفئات التي تم إنشاؤها افتراضيًا
    $chart->getChartData()->getSeries()->clear();
    $chart->getChartData()->getCategories()->clear();
    $s = $chart->getChartData()->getSeries()->size();
    $s = $chart->getChartData()->getCategories()->size();
    # إضافة سلاسل جديدة
    $chart->getChartData()->getSeries()->add($fact->getCell($defaultWorksheetIndex, 0, 1, "السلسلة 1"), $chart->getType());
    $chart->getChartData()->getSeries()->add($fact->getCell($defaultWorksheetIndex, 0, 2, "السلسلة 2"), $chart->getType());
    # إضافة فئات جديدة
    $chart->getChartData()->getCategories()->add($fact->getCell($defaultWorksheetIndex, 1, 0, "الفئة 1"));
    $chart->getChartData()->getCategories()->add($fact->getCell($defaultWorksheetIndex, 2, 0, "الفئة 2"));
    $chart->getChartData()->getCategories()->add($fact->getCell($defaultWorksheetIndex, 3, 0, "الفئة 3"));
    # أخذ أول سلسلة رسم بياني
    $series = $chart->getChartData()->getSeries()->get_Item(0);
    # الآن ملء بيانات السلسلة
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 1, 1, 20));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 2, 1, 50));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 3, 1, 30));
    # تعيين لون التعبئة للسلسلة
    $series->getFormat()->getFill()->setFillType(FillType::Solid);
    $series->getFormat()->getFill()->getSolidFillColor()->setColor(java("java.awt.Color")->RED);
    # أخذ سلسلة رسم بياني ثانية
    $series = $chart->getChartData()->getSeries()->get_Item(1);
    # ملء بيانات السلسلة
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 1, 2, 30));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 2, 2, 10));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 3, 2, 60));
    # تعيين لون التعبئة للسلسلة
    $series->getFormat()->getFill()->setFillType(FillType::Solid);
    $series->getFormat()->getFill()->getSolidFillColor()->setColor(java("java.awt.Color")->GREEN);
    # إنشاء تسميات مخصصة لكل الفئات للسلسلة الجديدة
    # تعيين أول تسمية لإظهار اسم الفئة
    $lbl = $series->getDataPoints()->get_Item(0)->getLabel();
    $lbl->getDataLabelFormat()->setShowCategoryName(true);
    $lbl = $series->getDataPoints()->get_Item(1)->getLabel();
    $lbl->getDataLabelFormat()->setShowSeriesName(true);
    # إظهار القيمة للتسمية الثالثة
    $lbl = $series->getDataPoints()->get_Item(2)->getLabel();
    $lbl->getDataLabelFormat()->setShowValue(true);
    $lbl->getDataLabelFormat()->setShowSeriesName(true);
    $lbl->getDataLabelFormat()->setSeparator("/");
    # حفظ العرض التقديمي مع الرسم البياني
    $pres->save("output.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية متشتتة

تُستخدم الرسوم البيانية المتشتتة (المعروفة أيضًا باسم المخططات المتشتتة أو رسوم بيانية x-y) غالبًا للتحقق من الأنماط أو لإظهار العلاقات بين متغيرين.

قد ترغب في استخدام رسم بياني متشتت عندما

  • يكون لديك بيانات عددية مزدوجة
  • يكون لديك متغيران يتناسبان جيدًا معًا
  • ترغب في تحديد ما إذا كان المتغيران مرتبطين
  • لديك متغير مستقل له قيم متعددة لمتغير تابع

خطوات: إنشاء رسم بياني متشتت | خطوات: إنشاء رسم بياني متشتت PowerPoint | خطوات: إنشاء رسم بياني متشتت في عرض PowerPoint

  1. يرجى اتباع الخطوات المذكورة أعلاه في إنشاء رسوم بيانية عادية
  2. بالنسبة للخطوة الثالثة، أضف رسمًا بيانيًا مع بعض البيانات وحدد نوع الرسم البياني الخاص بك كأحد الأنواع التالية
    1. ChartType::ScatterWithMarkers - يمثل رسمًبياني متشتت.
    2. ChartType::ScatterWithSmoothLinesAndMarkers - يمثل رسمًبياني متشتت متصل بواسطة منحنيات، مع علامات بيانات.
    3. ChartType::ScatterWithSmoothLines - يمثل رسمًبياني متشتت متصل بواسطة منحنيات، بدون علامات بيانات.
    4. ChartType::ScatterWithStraightLinesAndMarkers - يمثل رسمًبياني متشتت متصل بواسطة خطوط، مع علامات بيانات.
    5. ChartType::ScatterWithStraightLines - يمثل رسمًبياني متشتت متصل بواسطة خطوط، بدون علامات بيانات.

هذا الكود PHP يوضح لك كيفية إنشاء رسوم بيانية متشتتة مع سلسلة مختلفة من العلامات:

  # ينشئ مثيل لفئة عرض تمثل ملف PPTX
  $pres = new Presentation();
  try {
    # الوصول إلى الشريحة الأولى
    $slide = $pres->getSlides()->get_Item(0);
    # إنشاء الرسم البياني الافتراضي
    $chart = $slide->getShapes()->addChart(ChartType::ScatterWithSmoothLines, 0, 0, 400, 400);
    # الحصول على فهرس ورقة عمل بيانات الرسم البياني الافتراضية
    $defaultWorksheetIndex = 0;
    # الحصول على ورقة عمل بيانات الرسم البياني
    $fact = $chart->getChartData()->getChartDataWorkbook();
    # حذف السلاسل التجريبية
    $chart->getChartData()->getSeries()->clear();
    # إضافة سلاسل جديدة
    $chart->getChartData()->getSeries()->add($fact->getCell($defaultWorksheetIndex, 1, 1, "السلسلة 1"), $chart->getType());
    $chart->getChartData()->getSeries()->add($fact->getCell($defaultWorksheetIndex, 1, 3, "السلسلة 2"), $chart->getType());
    # أخذ أول سلسلة رسم بياني
    $series = $chart->getChartData()->getSeries()->get_Item(0);
    # إضافة نقطة جديدة (1:3) إلى السلسلة
    $series->getDataPoints()->addDataPointForScatterSeries($fact->getCell($defaultWorksheetIndex, 2, 1, 1), $fact->getCell($defaultWorksheetIndex, 2, 2, 3));
    # إضافة نقطة جديدة (2:10)
    $series->getDataPoints()->addDataPointForScatterSeries($fact->getCell($defaultWorksheetIndex, 3, 1, 2), $fact->getCell($defaultWorksheetIndex, 3, 2, 10));
    # تغيير نوع السلسلة
    $series->setType(ChartType::ScatterWithStraightLinesAndMarkers);
    # تغيير علامة سلسلة الرسم البياني
    $series->getMarker()->setSize(10);
    $series->getMarker()->setSymbol(MarkerStyleType::Star);
    # أخذ سلسلة رسم بياني ثانية
    $series = $chart->getChartData()->getSeries()->get_Item(1);
    # إضافة نقطة جديدة (5:2) هناك
    $series->getDataPoints()->addDataPointForScatterSeries($fact->getCell($defaultWorksheetIndex, 2, 3, 5), $fact->getCell($defaultWorksheetIndex, 2, 4, 2));
    # إضافة نقطة جديدة (3:1)
    $series->getDataPoints()->addDataPointForScatterSeries($fact->getCell($defaultWorksheetIndex, 3, 3, 3), $fact->getCell($defaultWorksheetIndex, 3, 4, 1));
    # إضافة نقطة جديدة (2:2)
    $series->getDataPoints()->addDataPointForScatterSeries($fact->getCell($defaultWorksheetIndex, 4, 3, 2), $fact->getCell($defaultWorksheetIndex, 4, 4, 2));
    # إضافة نقطة جديدة (5:1)
    $series->getDataPoints()->addDataPointForScatterSeries($fact->getCell($defaultWorksheetIndex, 5, 3, 5), $fact->getCell($defaultWorksheetIndex, 5, 4, 1));
    # تغيير علامة سلسلة الرسم البياني
    $series->getMarker()->setSize(10);
    $series->getMarker()->setSymbol(MarkerStyleType::Circle);
    $pres->save("AsposeChart_out.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية دائريّة

تُستخدم الرسوم البيانية الدائرية بشكل أفضل لإظهار العلاقة بين الجزء والكل في البيانات، خاصة عندما تحتوي البيانات على تسميات فئوية مع قيم عددية. ومع ذلك، إذا كانت بياناتك تحتوي على أجزاء أو تسميات كثيرة، قد ترغب في استخدام رسم بياني عمودي بدلاً من ذلك.

خطوات: إنشاء رسم بياني دائري | خطوات: إنشاء رسم بياني دائري PowerPoint | خطوات: إنشاء رسم بياني دائري في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation.
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني مع بيانات افتراضية جنبًا إلى جنب مع النوع المرغوب (في هذه الحالة، ChartType.Pie).
  4. الوصول إلى ورقة بيانات الرسم البياني IChartDataWorkbook.
  5. مسح السلاسل والفئات الافتراضية.
  6. إضافة سلاسل وفئات جديدة.
  7. إضافة بيانات جديدة للرسم البياني لسلسلة الرسم البياني.
  8. إضافة نقاط جديدة للرسوم البيانية وإضافة ألوان مخصصة لقطاعات الرسم البياني الدائري.
  9. تعيين تسميات للسلاسل.
  10. تعيين خطوط الصدارة لتسميات السلاسل.
  11. تعيين زاوية التدوير لشرائح الرسم البياني الدائري.
  12. كتابة العرض التقديمي المعدل كملف PPTX.

هذا الكود PHP يوضح لك كيفية إنشاء رسم بياني دائري:

  # ينشئ مثيل لفئة عرض تمثل ملف PPTX
  $pres = new Presentation();
  try {
    # الوصول إلى الشريحة الأولى
    $slides = $pres->getSlides()->get_Item(0);
    # إضافة رسم بياني ببيانات افتراضية
    $chart = $slides->getShapes()->addChart(ChartType::Pie, 100, 100, 400, 400);
    # تعيين عنوان الرسم البياني
    $chart->getChartTitle()->addTextFrameForOverriding("عنوان تجريبي");
    $chart->getChartTitle()->getTextFrameForOverriding()->getTextFrameFormat()->setCenterText(NullableBool::True);
    $chart->getChartTitle()->setHeight(20);
    $chart->setTitle(true);
    # تعيين السلسلة الأولى لإظهار القيم
    $chart->getChartData()->getSeries()->get_Item(0)->getLabels()->getDefaultDataLabelFormat()->setShowValue(true);
    # تعيين فهرس ورقة بيانات الرسم البياني
    $defaultWorksheetIndex = 0;
    # الحصول على ورقة عمل بيانات الرسم البياني
    $fact = $chart->getChartData()->getChartDataWorkbook();
    # حذف السلاسل والفئات التي تم إنشاؤها افتراضيًا
    $chart->getChartData()->getSeries()->clear();
    $chart->getChartData()->getCategories()->clear();
    # إضافة فئات جديدة
    $chart->getChartData()->getCategories()->add($fact->getCell(0, 1, 0, "الربع الأول"));
    $chart->getChartData()->getCategories()->add($fact->getCell(0, 2, 0, "الربع الثاني"));
    $chart->getChartData()->getCategories()->add($fact->getCell(0, 3, 0, "الربع الثالث"));
    # إضافة سلاسل جديدة
    $series = $chart->getChartData()->getSeries()->add($fact->getCell(0, 0, 1, "السلسلة 1"), $chart->getType());
    # ملء بيانات السلسلة
    $series->getDataPoints()->addDataPointForPieSeries($fact->getCell($defaultWorksheetIndex, 1, 1, 20));
    $series->getDataPoints()->addDataPointForPieSeries($fact->getCell($defaultWorksheetIndex, 2, 1, 50));
    $series->getDataPoints()->addDataPointForPieSeries($fact->getCell($defaultWorksheetIndex, 3, 1, 30));
    # لا يعمل في الإصدار الجديد
    # إضافة نقاط جديدة وتعيين لون القطاع
    # series.IsColorVaried = true;
    $chart->getChartData()->getSeriesGroups()->get_Item(0)->setColorVaried(true);
    $point = $series->getDataPoints()->get_Item(0);
    $point->getFormat()->getFill()->setFillType(FillType::Solid);
    $point->getFormat()->getFill()->getSolidFillColor()->setColor(java("java.awt.Color")->CYAN);
    # تعيين حدود القطاع
    $point->getFormat()->getLine()->getFillFormat()->setFillType(FillType::Solid);
    $point->getFormat()->getLine()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->GRAY);
    $point->getFormat()->getLine()->setWidth(3.0);
    $point->getFormat()->getLine()->setStyle(LineStyle->ThinThick);
    $point->getFormat()->getLine()->setDashStyle(LineDashStyle->DashDot);
    $point1 = $series->getDataPoints()->get_Item(1);
    $point1->getFormat()->getFill()->setFillType(FillType::Solid);
    $point1->getFormat()->getFill()->getSolidFillColor()->setColor(java("java.awt.Color")->ORANGE);
    # تعيين حدود القطاع
    $point1->getFormat()->getLine()->getFillFormat()->setFillType(FillType::Solid);
    $point1->getFormat()->getLine()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->BLUE);
    $point1->getFormat()->getLine()->setWidth(3.0);
    $point1->getFormat()->getLine()->setStyle(LineStyle->Single);
    $point1->getFormat()->getLine()->setDashStyle(LineDashStyle->LargeDashDot);
    $point2 = $series->getDataPoints()->get_Item(2);
    $point2->getFormat()->getFill()->setFillType(FillType::Solid);
    $point2->getFormat()->getFill()->getSolidFillColor()->setColor(java("java.awt.Color")->YELLOW);
    # تعيين حدود القطاع
    $point2->getFormat()->getLine()->getFillFormat()->setFillType(FillType::Solid);
    $point2->getFormat()->getLine()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->RED);
    $point2->getFormat()->getLine()->setWidth(2.0);
    $point2->getFormat()->getLine()->setStyle(LineStyle->ThinThin);
    $point2->getFormat()->getLine()->setDashStyle(LineDashStyle->LargeDashDotDot);
    # إنشاء تسميات مخصصة لكل من الفئات للسلسلة الجديدة
    $lbl1 = $series->getDataPoints()->get_Item(0)->getLabel();
    # lbl.ShowCategoryName = true;
    $lbl1->getDataLabelFormat()->setShowValue(true);
    $lbl2 = $series->getDataPoints()->get_Item(1)->getLabel();
    $lbl2->getDataLabelFormat()->setShowValue(true);
    $lbl2->getDataLabelFormat()->setShowLegendKey(true);
    $lbl2->getDataLabelFormat()->setShowPercentage(true);
    $lbl3 = $series->getDataPoints()->get_Item(2)->getLabel();
    $lbl3->getDataLabelFormat()->setShowSeriesName(true);
    $lbl3->getDataLabelFormat()->setShowPercentage(true);
    # إظهار خطوط الصدارة للرسم البياني
    $series->getLabels()->getDefaultDataLabelFormat()->setShowLeaderLines(true);
    # تعيين زاوية الدوران لقطاعات الرسم البياني الدائري
    $chart->getChartData()->getSeriesGroups()->get_Item(0)->setFirstSliceAngle(180);
    # حفظ العرض التقديمي مع الرسم البياني
    $pres->save("PieChart_out.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية خطية

تُستخدم الرسوم البيانية الخطية (المعروفة أيضًا باسم المخططات الخطية) بشكل أفضل في الحالات التي تريد فيها إظهار تغير القيم بمرور الوقت. باستخدام رسم بياني خطي، يمكنك مقارنة الكثير من البيانات في وقت واحد، تتبع التغيرات والاتجاهات بمرور الوقت، تسليط الضوء على الشذوذ في سلسلة البيانات، وما إلى ذلك.

  1. إنشاء مثيل من فئة Presentation.
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني مع بيانات افتراضية جنبًا إلى جنب مع النوع المرغوب (في هذه الحالة، ChartType::Line).
  4. الوصول إلى بيانات الرسم البياني IChartDataWorkbook.
  5. مسح السلاسل والفئات الافتراضية.
  6. إضافة سلاسل وفئات جديدة.
  7. إضافة بيانات جديدة للرسم البياني لسلسلة الرسم البياني.
  8. كتابة العرض التقديمي المعدل كملف PPTX.

هذا الكود PHP يوضح لك كيفية إنشاء رسم بياني خطي:

  $pres = new Presentation();
  try {
    $lineChart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Line, 10, 50, 600, 350);
    $pres->save("lineChart.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

بشكل افتراضي، يتم ربط النقاط على الرسم البياني الخطى بخطوط مستقيمة متقطعة. إذا كنت ترغب في ربط النقاط بخطوط مقطوعة بدلاً من ذلك، يمكنك تحديد نوع التقطع المفضل لديك بهذه الطريقة:

  $lineChart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Line, 10, 50, 600, 350);
  foreach($lineChart->getChartData()->getSeries() as $series) {
    $series->getFormat()->getLine()->setDashStyle(LineDashStyle->Dash);
  }

إنشاء رسوم بيانية خريطة شجرية

تُستخدم رسوم بيانية الخريطة الشجرية بشكل أفضل لبيانات المبيعات عندما ترغب في إظهار الحجم النسبي لفئات البيانات و (في نفس الوقت) سحب الانتباه بسرعة إلى العناصر التي تشكل مساهمات كبيرة في كل فئة.

خطوات: إنشاء رسم بياني خريطة شجرية | خطوات: إنشاء رسم بياني خريطة شجرية PowerPoint | خطوات: إنشاء رسم بياني خريطة شجرية في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation .
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني مع بيانات افتراضية جنبًا إلى جنب مع النوع المرغوب (في هذه الحالة، ChartType.TreeMap).
  4. الوصول إلى بيانات الرسم البياني IChartDataWorkbook.
  5. مسح السلاسل والفئات الافتراضية.
  6. إضافة سلاسل وفئات جديدة.
  7. إضافة بيانات جديدة للرسم البياني لسلسلة الرسم البياني.
  8. كتابة العرض التقديمي المعدل كملف PPTX.

هذا الكود PHP يوضح لك كيفية إنشاء رسم بياني خريطة شجرية:

  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Treemap, 50, 50, 500, 400);
    $chart->getChartData()->getCategories()->clear();
    $chart->getChartData()->getSeries()->clear();
    $wb = $chart->getChartData()->getChartDataWorkbook();
    $wb->clear(0);
    # الفرع 1
    $leaf = $chart->getChartData()->getCategories()->add($wb->getCell(0, "C1", "ورقة 1"));
    $leaf->getGroupingLevels()->setGroupingItem(1, "جذع 1");
    $leaf->getGroupingLevels()->setGroupingItem(2, "فرع 1");
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "C2", "ورقة 2"));
    $leaf = $chart->getChartData()->getCategories()->add($wb->getCell(0, "C3", "ورقة 3"));
    $leaf->getGroupingLevels()->setGroupingItem(1, "جذع 2");
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "C4", "ورقة 4"));
    # الفرع 2
    $leaf = $chart->getChartData()->getCategories()->add($wb->getCell(0, "C5", "ورقة 5"));
    $leaf->getGroupingLevels()->setGroupingItem(1, "جذع 3");
    $leaf->getGroupingLevels()->setGroupingItem(2, "فرع 2");
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "C6", "ورقة 6"));
    $leaf = $chart->getChartData()->getCategories()->add($wb->getCell(0, "C7", "ورقة 7"));
    $leaf->getGroupingLevels()->setGroupingItem(1, "جذع 4");
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "C8", "ورقة 8"));
    $series = $chart->getChartData()->getSeries()->add(ChartType::Treemap);
    $series->getLabels()->getDefaultDataLabelFormat()->setShowCategoryName(true);
    $series->getDataPoints()->addDataPointForTreemapSeries($wb->getCell(0, "D1", 4));
    $series->getDataPoints()->addDataPointForTreemapSeries($wb->getCell(0, "D2", 5));
    $series->getDataPoints()->addDataPointForTreemapSeries($wb->getCell(0, "D3", 3));
    $series->getDataPoints()->addDataPointForTreemapSeries($wb->getCell(0, "D4", 6));
    $series->getDataPoints()->addDataPointForTreemapSeries($wb->getCell(0, "D5", 9));
    $series->getDataPoints()->addDataPointForTreemapSeries($wb->getCell(0, "D6", 9));
    $series->getDataPoints()->addDataPointForTreemapSeries($wb->getCell(0, "D7", 4));
    $series->getDataPoints()->addDataPointForTreemapSeries($wb->getCell(0, "D8", 3));
    $series->setParentLabelLayout(ParentLabelLayoutType::Overlapping);
    $pres->save("Treemap.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية للمخزون

خطوات: إنشاء رسم بياني للمخزون | خطوات: إنشاء رسم بياني للمخزون PowerPoint | خطوات: إنشاء رسم بياني للمخزون في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation .
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني ببيانات افتراضية جنبًا إلى جنب مع النوع المراد (ChartType.OpenHighLowClose).
  4. الوصول إلى بيانات الرسم البياني IChartDataWorkbook.
  5. مسح السلاسل والفئات الافتراضية.
  6. إضافة سلاسل وفئات جديدة.
  7. إضافة بيانات جديدة للرسم البياني لسلسلة الرسم البياني.
  8. تحديد تنسيق HiLowLines.
  9. كتابة العرض التقديمي المعدل كملف PPTX.

عينة من كود PHP المستخدم لإنشاء رسم بياني للمخزون:

  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::OpenHighLowClose, 50, 50, 600, 400, false);
    $chart->getChartData()->getSeries()->clear();
    $chart->getChartData()->getCategories()->clear();
    $wb = $chart->getChartData()->getChartDataWorkbook();
    $chart->getChartData()->getCategories()->add($wb->getCell(0, 1, 0, "A"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, 2, 0, "B"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, 3, 0, "C"));
    $chart->getChartData()->getSeries()->add($wb->getCell(0, 0, 1, "فتح"), $chart->getType());
    $chart->getChartData()->getSeries()->add($wb->getCell(0, 0, 2, "مرتفع"), $chart->getType());
    $chart->getChartData()->getSeries()->add($wb->getCell(0, 0, 3, "منخفض"), $chart->getType());
    $chart->getChartData()->getSeries()->add($wb->getCell(0, 0, 4, "إغلاق"), $chart->getType());
    $series = $chart->getChartData()->getSeries()->get_Item(0);
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 1, 1, 72));
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 2, 1, 25));
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 3, 1, 38));
    $series = $chart->getChartData()->getSeries()->get_Item(1);
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 1, 2, 172));
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 2, 2, 57));
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 3, 2, 57));
    $series = $chart->getChartData()->getSeries()->get_Item(2);
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 1, 3, 12));
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 2, 3, 12));
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 3, 3, 13));
    $series = $chart->getChartData()->getSeries()->get_Item(3);
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 1, 4, 25));
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 2, 4, 38));
    $series->getDataPoints()->addDataPointForStockSeries($wb->getCell(0, 3, 4, 50));
    $chart->getChartData()->getSeriesGroups()->get_Item(0)->getUpDownBars()->setUpDownBars(true);
    $chart->getChartData()->getSeriesGroups()->get_Item(0)->getHiLowLinesFormat()->getLine()->getFillFormat()->setFillType(FillType::Solid);
    foreach($chart->getChartData()->getSeries() as $ser) {
      $ser->getFormat()->getLine()->getFillFormat()->setFillType(FillType::NoFill);
    }
    $pres->save("output.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية صندوق وشوكة

خطوات: إنشاء رسم بياني صندوق وشوكة | خطوات: إنشاء رسم بياني صندوق وشوكة PowerPoint | خطوات: إنشاء رسم بياني صندوق وشوكة في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation .
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني ببيانات افتراضية جنبًا إلى جنب مع النوع المرغوب (ChartType.BoxAndWhisker).
  4. الوصول إلى بيانات الرسم البياني IChartDataWorkbook.
  5. مسح السلاسل والفئات الافتراضية.
  6. إضافة سلاسل وفئات جديدة.
  7. إضافة بيانات جديدة للرسم البياني لسلسلة الرسم البياني.
  8. كتابة العرض التقديمي المعدل كملف PPTX.

هذا الكود PHP يوضح لك كيفية إنشاء رسم بياني صندوق وشوكة:

  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::BoxAndWhisker, 50, 50, 500, 400);
    $chart->getChartData()->getCategories()->clear();
    $chart->getChartData()->getSeries()->clear();
    $wb = $chart->getChartData()->getChartDataWorkbook();
    $wb->clear(0);
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A1", "الفئة 1"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A2", "الفئة 2"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A3", "الفئة 3"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A4", "الفئة 4"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A5", "الفئة 5"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A6", "الفئة 6"));
    $series = $chart->getChartData()->getSeries()->add(ChartType::BoxAndWhisker);
    $series->setQuartileMethod(QuartileMethodType::Exclusive);
    $series->setShowMeanLine(true);
    $series->setShowMeanMarkers(true);
    $series->setShowInnerPoints(true);
    $series->setShowOutlierPoints(true);
    $series->getDataPoints()->addDataPointForBoxAndWhiskerSeries($wb->getCell(0, "B1", 15));
    $series->getDataPoints()->addDataPointForBoxAndWhiskerSeries($wb->getCell(0, "B2", 41));
    $series->getDataPoints()->addDataPointForBoxAndWhiskerSeries($wb->getCell(0, "B3", 16));
    $series->getDataPoints()->addDataPointForBoxAndWhiskerSeries($wb->getCell(0, "B4", 10));
    $series->getDataPoints()->addDataPointForBoxAndWhiskerSeries($wb->getCell(0, "B5", 23));
    $series->getDataPoints()->addDataPointForBoxAndWhiskerSeries($wb->getCell(0, "B6", 16));
    $pres->save("BoxAndWhisker.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية قمع

خطوات: إنشاء رسم بياني قمع | خطوات: إنشاء رسم بياني قمع PowerPoint | خطوات: إنشاء رسم بياني قمع في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation .
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني ببيانات افتراضية جنبًا إلى جنب مع النوع المرغوب (ChartType.Funnel).
  4. كتابة العرض التقديمي المعدل كملف PPTX.

يوضح لك كود PHP كيفية إنشاء رسم بياني قمع:

  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Funnel, 50, 50, 500, 400);
    $chart->getChartData()->getCategories()->clear();
    $chart->getChartData()->getSeries()->clear();
    $wb = $chart->getChartData()->getChartDataWorkbook();
    $wb->clear(0);
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A1", "الفئة 1"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A2", "الفئة 2"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A3", "الفئة 3"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A4", "الفئة 4"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A5", "الفئة 5"));
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "A6", "الفئة 6"));
    $series = $chart->getChartData()->getSeries()->add(ChartType::Funnel);
    $series->getDataPoints()->addDataPointForFunnelSeries($wb->getCell(0, "B1", 50));
    $series->getDataPoints()->addDataPointForFunnelSeries($wb->getCell(0, "B2", 100));
    $series->getDataPoints()->addDataPointForFunnelSeries($wb->getCell(0, "B3", 200));
    $series->getDataPoints()->addDataPointForFunnelSeries($wb->getCell(0, "B4", 300));
    $series->getDataPoints()->addDataPointForFunnelSeries($wb->getCell(0, "B5", 400));
    $series->getDataPoints()->addDataPointForFunnelSeries($wb->getCell(0, "B6", 500));
    $pres->save("Funnel.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية شمس مركزي

خطوات: إنشاء رسم بياني شمس مركزي | خطوات: إنشاء رسم بياني شمس مركزي PowerPoint | خطوات: إنشاء رسم بياني شمس مركزي في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation .
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني ببيانات افتراضية جنبًا إلى جنب مع النوع المرغوب (في هذه الحالة، ChartType.sunburst).
  4. كتابة العرض التقديمي المعدل كملف PPTX.

يوضح لك كود PHP كيفية إنشاء رسم بياني شمس مركزي:

  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Sunburst, 50, 50, 500, 400);
    $chart->getChartData()->getCategories()->clear();
    $chart->getChartData()->getSeries()->clear();
    $wb = $chart->getChartData()->getChartDataWorkbook();
    $wb->clear(0);
    # الفرع 1
    $leaf = $chart->getChartData()->getCategories()->add($wb->getCell(0, "C1", "ورقة 1"));
    $leaf->getGroupingLevels()->setGroupingItem(1, "جذع 1");
    $leaf->getGroupingLevels()->setGroupingItem(2, "فرع 1");
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "C2", "ورقة 2"));
    $leaf = $chart->getChartData()->getCategories()->add($wb->getCell(0, "C3", "ورقة 3"));
    $leaf->getGroupingLevels()->setGroupingItem(1, "جذع 2");
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "C4", "ورقة 4"));
    # الفرع 2
    $leaf = $chart->getChartData()->getCategories()->add($wb->getCell(0, "C5", "ورقة 5"));
    $leaf->getGroupingLevels()->setGroupingItem(1, "جذع 3");
    $leaf->getGroupingLevels()->setGroupingItem(2, "فرع 2");
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "C6", "ورقة 6"));
    $leaf = $chart->getChartData()->getCategories()->add($wb->getCell(0, "C7", "ورقة 7"));
    $leaf->getGroupingLevels()->setGroupingItem(1, "جذع 4");
    $chart->getChartData()->getCategories()->add($wb->getCell(0, "C8", "ورقة 8"));
    $series = $chart->getChartData()->getSeries()->add(ChartType::Sunburst);
    $series->getLabels()->getDefaultDataLabelFormat()->setShowCategoryName(true);
    $series->getDataPoints()->addDataPointForSunburstSeries($wb->getCell(0, "D1", 4));
    $series->getDataPoints()->addDataPointForSunburstSeries($wb->getCell(0, "D2", 5));
    $series->getDataPoints()->addDataPointForSunburstSeries($wb->getCell(0, "D3", 3));
    $series->getDataPoints()->addDataPointForSunburstSeries($wb->getCell(0, "D4", 6));
    $series->getDataPoints()->addDataPointForSunburstSeries($wb->getCell(0, "D5", 9));
    $series->getDataPoints()->addDataPointForSunburstSeries($wb->getCell(0, "D6", 9));
    $series->getDataPoints()->addDataPointForSunburstSeries($wb->getCell(0, "D7", 4));
    $series->getDataPoints()->addDataPointForSunburstSeries($wb->getCell(0, "D8", 3));
    $pres->save("Sunburst.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية هيستوجرام

خطوات: إنشاء رسم بياني هيستوجرام | خطوات: إنشاء رسم بياني هيستوجرام PowerPoint | خطوات: إنشاء رسم بياني هيستوجرام في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation .
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني ببيانات افتراضية جنبًا إلى جنب مع النوع المرغوب (ChartType.Histogram).
  4. الوصول إلى بيانات الرسم البياني IChartDataWorkbook.
  5. مسح السلاسل والفئات الافتراضية.
  6. إضافة سلاسل وفئات جديدة.
  7. كتابة العرض التقديمي المعدل كملف PPTX.

هذا الكود PHP يوضح لك كيفية إنشاء رسم بياني هيستوجرام:

  $pres = new Presentation();
  $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Histogram, 50, 50, 500, 400);
  $chart->getChartData()->getCategories()->clear();
  $chart->getChartData()->getSeries()->clear();
  $wb = $chart->getChartData()->getChartDataWorkbook();
  $wb->clear(0);
  $series = $chart->getChartData()->getSeries()->add(ChartType::Histogram);
  $series->getDataPoints()->addDataPointForHistogramSeries($wb->getCell(0, "A1", 15));
  $series->getDataPoints()->addDataPointForHistogramSeries($wb->getCell(0, "A2", -41));
  $series->getDataPoints()->addDataPointForHistogramSeries($wb->getCell(0, "A3", 16));
  $series->getDataPoints()->addDataPointForHistogramSeries($wb->getCell(0, "A4", 10));
  $series->getDataPoints()->addDataPointForHistogramSeries($wb->getCell(0, "A5", -23));
  $series->getDataPoints()->addDataPointForHistogramSeries($wb->getCell(0, "A6", 16));
  $chart->getAxes()->getHorizontalAxis()->setAggregationType(AxisAggregationType::Automatic);

إنشاء رسوم بيانية رادار

خطوات: إنشاء رسم بياني رادار | خطوات: إنشاء رسم بياني رادار PowerPoint | خطوات: إنشاء رسم بياني رادار في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation .
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني مع بعض البيانات وتحديد نوع الرسم البياني المفضل لديك (ChartType::Radar في هذه الحالة).
  4. كتابة العرض التقديمي المعدل كملف PPTX.

يوضح لك كود PHP كيفية إنشاء رسم بياني رادار:

  $pres = new Presentation();
  try {
    $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Radar, 20, 20, 400, 300);
    $pres->save("Radar-chart.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية متعددة الفئات

خطوات: إنشاء رسم بياني متعدد الفئات | خطوات: إنشاء رسم بياني متعدد الفئات PowerPoint | خطوات: إنشاء رسم بياني متعدد الفئات في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation .
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. إضافة رسم بياني ببيانات افتراضية جنبًا إلى جنب مع النوع المرغوب (ChartType.ClusteredColumn).
  4. الوصول إلى بيانات الرسم البياني IChartDataWorkbook.
  5. مسح السلاسل والفئات الافتراضية.
  6. إضافة سلاسل وفئات جديدة.
  7. إضافة بيانات جديدة للرسم البياني لسلسلة الرسم البياني.
  8. كتابة العرض التقديمي المعدل كملف PPTX.

هذا الكود PHP يوضح لك كيفية إنشاء رسم بياني متعدد الفئات:

  $pres = new Presentation();
  try {
    $ch = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 100, 100, 600, 450);
    $ch->getChartData()->getSeries()->clear();
    $ch->getChartData()->getCategories()->clear();
    $fact = $ch->getChartData()->getChartDataWorkbook();
    $fact->clear(0);
    $defaultWorksheetIndex = 0;
    $category = $ch->getChartData()->getCategories()->add($fact->getCell(0, "c2", "A"));
    $category->getGroupingLevels()->setGroupingItem(1, "مجموعة 1");
    $category = $ch->getChartData()->getCategories()->add($fact->getCell(0, "c3", "B"));
    $category = $ch->getChartData()->getCategories()->add($fact->getCell(0, "c4", "C"));
    $category->getGroupingLevels()->setGroupingItem(1, "مجموعة 2");
    $category = $ch->getChartData()->getCategories()->add($fact->getCell(0, "c5", "D"));
    $category = $ch->getChartData()->getCategories()->add($fact->getCell(0, "c6", "E"));
    $category->getGroupingLevels()->setGroupingItem(1, "مجموعة 3");
    $category = $ch->getChartData()->getCategories()->add($fact->getCell(0, "c7", "F"));
    $category = $ch->getChartData()->getCategories()->add($fact->getCell(0, "c8", "G"));
    $category->getGroupingLevels()->setGroupingItem(1, "مجموعة 4");
    $category = $ch->getChartData()->getCategories()->add($fact->getCell(0, "c9", "H"));
    # إضافة السلاسل
    $series = $ch->getChartData()->getSeries()->add($fact->getCell(0, "D1", "السلسلة 1"), ChartType::ClusteredColumn);
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, "D2", 10));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, "D3", 20));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, "D4", 30));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, "D5", 40));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, "D6", 50));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, "D7", 60));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, "D8", 70));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, "D9", 80));
    # حفظ العرض التقديمي مع الرسم البياني
    $pres->save("AsposeChart_out.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية خريطة

خريطة الرسم البياني هي تصور لمنطقة تحتوي على البيانات. تُستخدم رسوم بيانية الخريطة بشكل أفضل لمقارنة البيانات أو القيم عبر المناطق الجغرافية.

خطوات: إنشاء رسم بياني خريطة | خطوات: إنشاء رسم بياني خريطة PowerPoint | خطوات: إنشاء رسم بياني خريطة في عرض PowerPoint

هذا الكود PHP يوضح لك كيفية إنشاء رسم بياني خريطة:

  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::Map, 50, 50, 500, 400);
    $pres->save("mapChart.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

إنشاء رسوم بيانية مدمجة

تعتبر الرسوم البيانية المدمجة (أو الرسوم البيانية المشتركة) رسوم بيانية تجمع بين اثنين أو أكثر من الرسوم البيانية على رسم بياني واحد. تتيح لك مثل هذه الرسوم البيانية تسليط الضوء أو مقارنة أو مراجعة الاختلافات بين مجموعتين (أو أكثر) من البيانات. بهذه الطريقة، ترى العلاقة (إن وجدت) بين مجموعات البيانات.

combination-chart-ppt

يوضح لك كود PHP كيفية إنشاء رسم بياني مدمج في PowerPoint:


تحديث الرسوم البيانية

خطوات: تحديث رسم بياني PowerPoint | خطوات: تحديث رسم بياني عرض | خطوات: تحديث رسم بياني في عرض PowerPoint

  1. إنشاء مثيل من فئة Presentation التي تمثل العرض التقديمي الذي يحتوي على الرسم البياني الذي ترغب في تحديثه.
  2. الحصول على مرجع شريحة باستخدام فهرسها.
  3. التنقل بين جميع الأشكال للعثور على الرسم البياني المطلوب.
  4. الوصول إلى ورقة بيانات الرسم البياني.
  5. تعديل بيانات سلسلة الرسم البياني عن طريق تغيير قيم السلاسل.
  6. إضافة سلسلة جديدة وملء البيانات فيها.
  7. كتابة العرض التقديمي المعدل كملف PPTX.

يوضح لك كود PHP كيفية تحديث رسم بياني:

  $pres = new Presentation();
  try {
    # الوصول إلى الشريحة الأولى
    $sld = $pres->getSlides()->get_Item(0);
    # الحصول على الرسم البياني مع البيانات الافتراضية
    $chart = $sld->getShapes()->get_Item(0);
    # تعيين فهرس ورقة بيانات الرسم البياني
    $defaultWorksheetIndex = 0;
    # الحصول على ورقة عمل بيانات الرسم البياني
    $fact = $chart->getChartData()->getChartDataWorkbook();
    # تغيير اسم فئة الرسم البياني
    $fact->getCell($defaultWorksheetIndex, 1, 0, "الفئة المعدلة 1");
    $fact->getCell($defaultWorksheetIndex, 2, 0, "الفئة المعدلة 2");
    # أخذ السلسلة الأولى للرسم البياني
    $series = $chart->getChartData()->getSeries()->get_Item(0);
    # الآن تحديث بيانات السلسلة
    $fact->getCell($defaultWorksheetIndex, 0, 1, "السلسلة الجديدة 1");// تعديل اسم السلسلة

    $series->getDataPoints()->get_Item(0)->getValue()->setData(90);
    $series->getDataPoints()->get_Item(1)->getValue()->setData(123);
    $series->getDataPoints()->get_Item(2)->getValue()->setData(44);
    # أخذ السلسلة الثانية للرسم البياني
    $series = $chart->getChartData()->getSeries()->get_Item(1);
    # الآن تحديث بيانات السلسلة
    $fact->getCell($defaultWorksheetIndex, 0, 2, "السلسلة الجديدة 2");// تعديل اسم السلسلة

    $series->getDataPoints()->get_Item(0)->getValue()->setData(23);
    $series->getDataPoints()->get_Item(1)->getValue()->setData(67);
    $series->getDataPoints()->get_Item(2)->getValue()->setData(99);
    # الآن، إضافة سلسلة جديدة
    $chart->getChartData()->getSeries()->add($fact->getCell($defaultWorksheetIndex, 0, 3, "السلسلة 3"), $chart->getType());
    # أخذ السلسلة الثالثة للرسم البياني
    $series = $chart->getChartData()->getSeries()->get_Item(2);
    # الآن ملء بيانات السلسلة
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 1, 3, 20));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 2, 3, 50));
    $series->getDataPoints()->addDataPointForBarSeries($fact->getCell($defaultWorksheetIndex, 3, 3, 30));
    $chart->setType(ChartType::ClusteredCylinder);
    # حفظ العرض التقديمي مع الرسم البياني
    $pres->save("AsposeChartModified_out.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

تعيين نطاق البيانات للرسوم البيانية

لتعيين نطاق البيانات لرسم بياني، قم بما يلي:

  1. إنشاء مثيل من فئة Presentation التي تمثل العرض التقديمي الذي يحتوي على الرسم البياني.
  2. الحصول على مرجع شريحة من خلال فهرسها.
  3. التنقل بين جميع الأشكال للعثور على الرسم البياني المطلوب.
  4. الوصول إلى بيانات الرسم البياني وتعيين النطاق.
  5. حفظ العرض التقديمي المعدل كملف PPTX.

يوضح لك كود PHP كيفية تعيين نطاق البيانات لرسم بياني:

  $pres = new Presentation();
  try {
    $slide = $pres->getSlides()->get_Item(0);
    $chart = $slide->getShapes()->get_Item(0);
    $chart->getChartData()->setRange("Sheet1!A1:B4");
    $pres->save("SetDataRange_out.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

استخدام علامات افتراضية في الرسوم البيانية

عندما تستخدم علامة افتراضية في الرسوم البيانية، تحصل كل سلسلة رسم بياني على رموز علامات افتراضية مختلفة تلقائيًا.

يوضح لك كود PHP كيفية تعيين علامة سلسلة الرسم البياني تلقائيًا:

  $pres = new Presentation();
  try {
    $slide = $pres->getSlides()->get_Item(0);
    $chart = $slide->getShapes()->addChart(ChartType::LineWithMarkers, 10, 10, 400, 400);
    $chart->getChartData()->getSeries()->clear();
    $chart->getChartData()->getCategories()->clear();
    $fact = $chart->getChartData()->getChartDataWorkbook();
    $chart->getChartData()->getSeries()->add($fact->getCell(0, 0, 1, "السلسلة 1"), $chart->getType());
    $series = $chart->getChartData()->getSeries()->get_Item(0);
    $chart->getChartData()->getCategories()->add($fact->getCell(0, 1, 0, "C1"));
    $series->getDataPoints()->addDataPointForLineSeries($fact->getCell(0, 1, 1, 24));
    $chart->getChartData()->getCategories()->add($fact->getCell(0, 2, 0, "C2"));
    $series->getDataPoints()->addDataPointForLineSeries($fact->getCell(0,