إنشاء أو تحديث مخططات عرض تقديمي PowerPoint في JavaScript
نظرة عامة
تصف هذه المقالة كيفية إنشاء مخططات عروض تقديمية PowerPoint في Java. يمكنك أيضًا تحديث المخططات في JavaScript. تغطي المواضيع التالية.
مخطط: عادي
مخطط: مبعثر
مخطط: فطيرة
مخطط: شجرة خريطة
- Java إنشاء مخطط شجرة خريطة
- Java إنشاء مخطط PowerPoint شجرة خريطة
- Java إنشاء مخطط عرض تقديمي PowerPoint شجرة خريطة
مخطط: مخزون
مخطط: صندوق وشوكة
- Java إنشاء مخطط صندوق وشوكة
- Java إنشاء مخطط PowerPoint صندوق وشوكة
- Java إنشاء مخطط عرض تقديمي PowerPoint صندوق وشوكة
مخطط: قمع
مخطط: شعاع الشمس
- Java إنشاء مخطط شعاع الشمس
- Java إنشاء مخطط PowerPoint شعاع الشمس
- Java إنشاء مخطط عرض تقديمي PowerPoint شعاع الشمس
مخطط: مُحَدِّد تَكرار
- Java إنشاء مخطط مُحَدِّت تَكرار
- Java إنشاء مخطط PowerPoint مُحَدِّت تَكرار
- Java إنشاء مخطط عرض تقديمي PowerPoint مُحَدِّت تَكرار
مخطط: رادار
مخطط: متعدد الفئات
- Java إنشاء مخطط متعدد الفئات
- Java إنشاء مخطط PowerPoint متعدد الفئات
- Java إنشاء مخطط عرض تقديمي PowerPoint متعدد الفئات
مخطط: خريطة
إجراء: تحديث المخطط
إنشاء مخطط
تساعد المخططات الأشخاص على تصور البيانات بسرعة واستخلاص الأفكار، والتي قد لا تكون واضحة من جدول أو ورقة عمل.
لماذا إنشاء المخططات؟
باستخدام المخططات، يمكنك:
- تجميع أو تكثيف أو تلخيص كميات كبيرة من البيانات في شريحة واحدة من العرض التقديمي
- كشف الأنماط والاتجاهات في البيانات
- استنتاج اتجاه وزخم البيانات بمرور الوقت أو بالنسبة لوحدة قياس معينة
- الكشف عن القيم المتطرفة أو الأخطاء أو البيانات غير المنطقية
- نقل أو تقديم بيانات معقدة
في PowerPoint، يمكنك إنشاء المخططات عبر وظيفة الإدراج، التي توفر قوالب لتصميم أنواع متعددة من المخططات. باستخدام Aspose.Slides، يمكنك إنشاء مخططات عادية (بحسب الأنواع الشائعة) ومخططات مخصصة.
إنشاء مخططات عادية
الخطوات: إنشاء مخطط
- الخطوات: إنشاء مخطط PowerPoint في JavaScript
- الخطوات: إنشاء مخطط العروض التقديمية في JavaScript
- الخطوات: إنشاء مخطط عرض تقديمي PowerPoint في JavaScript
خطوات الكود:
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط مع بعض البيانات وتحديد نوع المخطط المفضل.
- إضافة عنوان للمخطط.
- الوصول إلى ورقة بيانات المخطط.
- مسح جميع السلاسل والفئات الافتراضية.
- إضافة سلاسل وفئات جديدة.
- إضافة بيانات مخطط جديدة لسلسلة المخطط.
- إضافة لون تعبئة لسلسلة المخطط.
- إضافة تسميات لسلسلة المخطط.
- كتابة العرض التقديمي المعدل كملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط عادي:
// يقوم بإنشاء كائن من فئة عرض تقديمي تمثل ملف PPTX
var pres = new aspose.slides.Presentation();
try {
// الوصول إلى الشريحة الأولى
var sld = pres.getSlides().get_Item(0);
// إضافة مخطط مع البيانات الافتراضية الخاصة به
var chart = sld.getShapes().addChart(aspose.slides.ChartType.ClusteredColumn, 0, 0, 500, 500);
// تعيين عنوان المخطط
chart.getChartTitle().addTextFrameForOverriding("Sample Title");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(aspose.slides.NullableBool.True);
chart.getChartTitle().setHeight(20);
chart.hasTitle();
// تعيين السلسلة الأولى لإظهار القيم
chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);
// تحديد الفهرس لورقة بيانات المخطط
var defaultWorksheetIndex = 0;
// الحصول على ورقة عمل بيانات المخطط
var fact = chart.getChartData().getChartDataWorkbook();
// حذف السلاسل والفئات المولدة افتراضيًا
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
var s = chart.getChartData().getSeries().size();
s = chart.getChartData().getCategories().size();
// إضافة سلاسل جديدة
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.getType());
// إضافة فئات جديدة
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));
// أخذ السلسلة الأولى للمخطط
var 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(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(java.getStaticFieldValue("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(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "GREEN"));
// إنشاء تسميات مخصصة لكل فئة للسلسلة الجديدة
// تعيين التسمية الأولى لإظهار اسم الفئة
var 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", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات مبعثرة
المخططات المبعثرة (المعروفة أيضًا بمخططات التشتت أو مخططات x‑y) تُستخدم غالبًا للتحقق من الأنماط أو إظهار الارتباطات بين متغيرين.
قد ترغب في استخدام مخطط مبعثر عندما:
- لديك بيانات رقمية مزدوجة
- لديك متغيران يتطابقان جيدًا
- تريد معرفة ما إذا كان المتغيران مرتبطين
- لديك متغير مستقل له قيم متعددة بالنسبة لمتغير تابع
الخطوات: إنشاء مخطط مبعثر في JavaScript | الخطوات: إنشاء مخطط PowerPoint مبعثر في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint مبعثر في JavaScript
- يرجى اتباع الخطوات المذكورة أعلاه في إنشاء مخططات عادية
- للخطوة الثالثة، أضف مخططًا مع بعض البيانات وحدد نوع المخطط كواحد من التالي
- ChartType.ScatterWithMarkers - يمثل مخطط تشتت مع علامات.
- ChartType.ScatterWithSmoothLinesAndMarkers - يمثل مخطط تشتت متصل بخطوط منحنية وعلامات بيانات.
- ChartType.ScatterWithSmoothLines - يمثل مخطط تشتت متصل بخطوط منحنية دون علامات بيانات.
- ChartType.ScatterWithStraightLinesAndMarkers - يمثل مخطط تشتت متصل بخطوط مستقيمة وعلامات بيانات.
- ChartType.ScatterWithStraightLines - يمثل مخطط تشتت متصل بخطوط مستقيمة دون علامات بيانات.
هذا الكود JavaScript يوضح كيفية إنشاء مخططات مبعثرة بسلسلة علامات مختلفة:
// ينشئ كائنًا من فئة عرض تقديمي تمثّل ملف PPTX
var pres = new aspose.slides.Presentation();
try {
// يصل إلى الشريحة الأولى
var slide = pres.getSlides().get_Item(0);
// ينشئ المخطط الافتراضي
var chart = slide.getShapes().addChart(aspose.slides.ChartType.ScatterWithSmoothLines, 0, 0, 400, 400);
// يحصل على فهرس ورقة عمل بيانات المخطط الافتراضية
var defaultWorksheetIndex = 0;
// يحصل على ورقة عمل بيانات المخطط
var fact = chart.getChartData().getChartDataWorkbook();
// يحذف السلسلة التجريبية
chart.getChartData().getSeries().clear();
// يضيف سلاسل جديدة
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 1, "Series 1"), chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 3, "Series 2"), chart.getType());
// يأخذ السلسلة الأولى للمخطط
var 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(aspose.slides.ChartType.ScatterWithStraightLinesAndMarkers);
// يغيّر علامة سلسلة المخطط
series.getMarker().setSize(10);
series.getMarker().setSymbol(aspose.slides.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(aspose.slides.MarkerStyleType.Circle);
pres.save("AsposeChart_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات فطيرة
تُستعمل مخططات الفطيرة لتوضيح علاقة الجزء بالكل، خاصةً عندما تحتوي البيانات على تسميات فئوية مع قيم رقمية. إذا كان لديك الكثير من الأجزاء أو التسميات، قد تلجأ إلى مخطط شريطي بدلاً من ذلك.
الخطوات: إنشاء مخطط فطيرة في JavaScript | الخطوات: إنشاء مخطط PowerPoint فطيرة في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint فطيرة في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (في هذه الحالة، ChartType.Pie).
- الوصول إلى ورقة بيانات المخطط ChartDataWorkbook.
- مسح السلاسل والفئات الافتراضية.
- إضافة سلاسل وفئات جديدة.
- إضافة بيانات مخطط جديدة لسلسلة المخطط.
- إضافة نقاط جديدة للمخطط وإعطاء ألوان مخصصة لأقسام الفطيرة.
- ضبط التسميات للسلسلة.
- ضبط خطوط القادة لتسميات السلسلة.
- ضبط زاوية الدوران لشريحة الفطيرة.
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط فطيرة:
// ينشئ كائنًا من فئة عرض تقديمي تمثل ملف PPTX
var pres = new aspose.slides.Presentation();
try {
// يصل إلى الشريحة الأولى
var slides = pres.getSlides().get_Item(0);
// يضيف مخططًا بالبيانات الافتراضية
var chart = slides.getShapes().addChart(aspose.slides.ChartType.Pie, 100, 100, 400, 400);
// يحدد عنوان المخطط
chart.getChartTitle().addTextFrameForOverriding("Sample Title");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(aspose.slides.NullableBool.True);
chart.getChartTitle().setHeight(20);
chart.setTitle(true);
// يضبط السلسلة الأولى لإظهار القيم
chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);
// يحدد الفهرس لورقة بيانات المخطط
var defaultWorksheetIndex = 0;
// يحصل على ورقة عمل بيانات المخطط
var fact = chart.getChartData().getChartDataWorkbook();
// يحذف السلاسل والفئات المولدة افتراضيًا
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
// يضيف فئات جديدة
chart.getChartData().getCategories().add(fact.getCell(0, 1, 0, "First Qtr"));
chart.getChartData().getCategories().add(fact.getCell(0, 2, 0, "2nd Qtr"));
chart.getChartData().getCategories().add(fact.getCell(0, 3, 0, "3rd Qtr"));
// يضيف سلاسل جديدة
var series = chart.getChartData().getSeries().add(fact.getCell(0, 0, 1, "Series 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));
// لا يعمل في الإصدار الجديد
// Adding new points and setting sector color
// series.IsColorVaried = true;
chart.getChartData().getSeriesGroups().get_Item(0).setColorVaried(true);
var point = series.getDataPoints().get_Item(0);
point.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
point.getFormat().getFill().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "CYAN"));
// يحدد حدود القطاع
point.getFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
point.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "GRAY"));
point.getFormat().getLine().setWidth(3.0);
point.getFormat().getLine().setStyle(aspose.slides.LineStyle.ThinThick);
point.getFormat().getLine().setDashStyle(aspose.slides.LineDashStyle.DashDot);
var point1 = series.getDataPoints().get_Item(1);
point1.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
point1.getFormat().getFill().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "ORANGE"));
// يحدد حدود القطاع
point1.getFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
point1.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLUE"));
point1.getFormat().getLine().setWidth(3.0);
point1.getFormat().getLine().setStyle(aspose.slides.LineStyle.Single);
point1.getFormat().getLine().setDashStyle(aspose.slides.LineDashStyle.LargeDashDot);
var point2 = series.getDataPoints().get_Item(2);
point2.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
point2.getFormat().getFill().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "YELLOW"));
// يحدد حدود القطاع
point2.getFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
point2.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "RED"));
point2.getFormat().getLine().setWidth(2.0);
point2.getFormat().getLine().setStyle(aspose.slides.LineStyle.ThinThin);
point2.getFormat().getLine().setDashStyle(aspose.slides.LineDashStyle.LargeDashDotDot);
// ينشئ تسميات مخصصة لكل فئة في السلسلة الجديدة
var lbl1 = series.getDataPoints().get_Item(0).getLabel();
// lbl.ShowCategoryName = true;
lbl1.getDataLabelFormat().setShowValue(true);
var lbl2 = series.getDataPoints().get_Item(1).getLabel();
lbl2.getDataLabelFormat().setShowValue(true);
lbl2.getDataLabelFormat().setShowLegendKey(true);
lbl2.getDataLabelFormat().setShowPercentage(true);
var 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", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات خطية
تُستعمل المخططات الخطية (المعروفة أيضًا بمخططات الخط) لتوضيح تغيّر القيم بمرور الوقت. باستخدام مخطط خطي، يمكنك مقارنة بيانات متعددة في آنٍ واحد، وتتبع التغيّرات والاتجاهات، وإبراز القيم الشاذة في السلسلة، وغيرها.
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (
ChartType.Line). - الوصول إلى ورقة بيانات المخطط IChartDataWorkbook.
- مسح السلاسل والفئات الافتراضية.
- إضافة سلاسل وفئات جديدة.
- إضافة بيانات مخطط جديدة لسلسلة المخطط.
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط خطي:
var pres = new aspose.slides.Presentation();
try {
var lineChart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.Line, 10, 50, 600, 350);
pres.save("lineChart.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
افتراضيًا، تُربط نقاط المخطط الخطي بخطوط مستقيمة مستمرة. إذا رغبت في ربط النقاط بسطور متقطعة، يمكنك تحديد نوع الخط المتقطّع بهذه الطريقة:
var lineChart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.Line, 10, 50, 600, 350);
for (let i = 0; i < lineChart.getChartData().getSeries().size(); i++) {
let series = lineChart.getChartData().getSeries().get_Item(i);
series.getFormat().getLine().setDashStyle(aspose.slides.LineDashStyle.Dash);
});
إنشاء مخططات شجرة خريطة
تُستعمل مخططات شجرة الخريطة لتمثيل بيانات المبيعات عندما تريد إظهار الحجم النسبي لفئات البيانات وفي الوقت نفسه جذب الانتباه إلى العناصر التي تساهم بأكبر قدر في كل فئة.
الخطوات: إنشاء مخطط شجرة خريطة في JavaScript | الخطوات: إنشاء مخطط PowerPoint شجرة خريطة في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint شجرة خريطة في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (في هذه الحالة، ChartType.TreeMap).
- الوصول إلى ورقة بيانات المخطط ChartDataWorkbook.
- مسح السلاسل والفئات الافتراضية.
- إضافة سلاسل وفئات جديدة.
- إضافة بيانات مخطط جديدة لسلسلة المخطط.
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط شجرة خريطة:
var pres = new aspose.slides.Presentation();
try {
var chart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.Treemap, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
var wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
// الفرع 1
var leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C1", "Leaf1"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem1");
leaf.getGroupingLevels().setGroupingItem(2, "Branch1");
chart.getChartData().getCategories().add(wb.getCell(0, "C2", "Leaf2"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C3", "Leaf3"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem2");
chart.getChartData().getCategories().add(wb.getCell(0, "C4", "Leaf4"));
// الفرع 2
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C5", "Leaf5"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem3");
leaf.getGroupingLevels().setGroupingItem(2, "Branch2");
chart.getChartData().getCategories().add(wb.getCell(0, "C6", "Leaf6"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C7", "Leaf7"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem4");
chart.getChartData().getCategories().add(wb.getCell(0, "C8", "Leaf8"));
var series = chart.getChartData().getSeries().add(aspose.slides.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(aspose.slides.ParentLabelLayoutType.Overlapping);
pres.save("Treemap.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات مخزون
الخطوات: إنشاء مخطط مخزون في JavaScript | الخطوات: إنشاء مخطط PowerPoint مخزون في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint مخزون في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (ChartType.OpenHighLowClose).
- الوصول إلى ورقة بيانات المخطط ChartDataWorkbook.
- مسح السلاسل والفئات الافتراضية.
- إضافة سلاسل وفئات جديدة.
- إضافة بيانات مخطط جديدة لسلسلة المخطط.
- تحديد تنسيق HiLowLines.
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط مخزون:
var pres = new aspose.slides.Presentation();
try {
var chart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.OpenHighLowClose, 50, 50, 600, 400);
var 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, "Open"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 2, "High"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 3, "Low"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 4, "Close"), chart.getType());
var 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(java.newByte(aspose.slides.FillType.Solid));
for (let i = 0; i < chart.getChartData().getSeries().size(); i++) {
let ser = chart.getChartData().getSeries().get_Item(i);
ser.getFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
}
pres.save("output.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات صندوق وشوكة
الخطوات: إنشاء مخطط صندوق وشوكة في JavaScript | الخطوات: إنشاء مخطط PowerPoint صندوق وشوكة في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint صندوق وشوكة في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (ChartType.BoxAndWhisker).
- الوصول إلى ورقة بيانات المخطط ChartDataWorkbook.
- مسح السلاسل والفئات الافتراضية.
- إضافة سلاسل وفئات جديدة.
- إضافة بيانات مخطط جديدة لسلسلة المخطط.
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط صندوق وشوكة:
var pres = new aspose.slides.Presentation();
try {
var chart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.BoxAndWhisker, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
var wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
chart.getChartData().getCategories().add(wb.getCell(0, "A1", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A2", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A3", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A4", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A5", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A6", "Category 1"));
var series = chart.getChartData().getSeries().add(aspose.slides.ChartType.BoxAndWhisker);
series.setQuartileMethod(aspose.slides.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", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات قمع
الخطوات: إنشاء مخطط قمع في JavaScript | الخطوات: إنشاء مخطط PowerPoint قمع في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint قمع في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (ChartType.Funnel).
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
الكود JavaScript يوضح كيفية إنشاء مخطط قمع:
var pres = new aspose.slides.Presentation();
try {
var chart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.Funnel, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
var wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
chart.getChartData().getCategories().add(wb.getCell(0, "A1", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A2", "Category 2"));
chart.getChartData().getCategories().add(wb.getCell(0, "A3", "Category 3"));
chart.getChartData().getCategories().add(wb.getCell(0, "A4", "Category 4"));
chart.getChartData().getCategories().add(wb.getCell(0, "A5", "Category 5"));
chart.getChartData().getCategories().add(wb.getCell(0, "A6", "Category 6"));
var series = chart.getChartData().getSeries().add(aspose.slides.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", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات شعاع الشمس
الخطوات: إنشاء مخطط شعاع الشمس في JavaScript | الخطوات: إنشاء مخطط PowerPoint شعاع الشمس في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint شعاع الشمس في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (في هذه الحالة، ChartType.sunburst).
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط شعاع الشمس:
var pres = new aspose.slides.Presentation();
try {
var chart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.Sunburst, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
var wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
// الفرع 1
var leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C1", "Leaf1"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem1");
leaf.getGroupingLevels().setGroupingItem(2, "Branch1");
chart.getChartData().getCategories().add(wb.getCell(0, "C2", "Leaf2"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C3", "Leaf3"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem2");
chart.getChartData().getCategories().add(wb.getCell(0, "C4", "Leaf4"));
// الفرع 2
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C5", "Leaf5"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem3");
leaf.getGroupingLevels().setGroupingItem(2, "Branch2");
chart.getChartData().getCategories().add(wb.getCell(0, "C6", "Leaf6"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C7", "Leaf7"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem4");
chart.getChartData().getCategories().add(wb.getCell(0, "C8", "Leaf8"));
var series = chart.getChartData().getSeries().add(aspose.slides.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", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات مُحَدِّد تَكرار
الخطوات: إنشاء مخطط مُحَدِّت تَكرار في JavaScript | الخطوات: إنشاء مخطط PowerPoint مُحَدِّت تَكرار في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint مُحَدِّت تَكرار في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (ChartType.Histogram).
- الوصول إلى ورقة بيانات المخطط ChartDataWorkbook.
- مسح السلاسل والفئات الافتراضية.
- إضافة سلاسل وفئات جديدة.
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط مُحَدِّت تَكرار:
var pres = new aspose.slides.Presentation();
var chart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.Histogram, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
var wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
var series = chart.getChartData().getSeries().add(aspose.slides.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(aspose.slides.AxisAggregationType.Automatic);
إنشاء مخططات رادار
الخطوات: إنشاء مخطط رادار في JavaScript | الخطوات: إنشاء مخطط PowerPoint رادار في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint رادار في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط مع بعض البيانات وتحديد النوع المفضل (
ChartType.Radarفي هذه الحالة). - كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط رادار:
var pres = new aspose.slides.Presentation();
try {
pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.Radar, 20, 20, 400, 300);
pres.save("Radar-chart.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات متعددة الفئات
الخطوات: إنشاء مخطط متعدد الفئات في JavaScript | الخطوات: إنشاء مخطط PowerPoint متعدد الفئات في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint متعدد الفئات في JavaScript
- إنشاء مثال من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة مخطط ببيانات افتراضية مع النوع المطلوب (ChartType.ClusteredColumn).
- الوصول إلى ورقة بيانات المخطط ChartDataWorkbook.
- مسح السلاسل والفئات الافتراضية.
- إضافة سلاسل وفئات جديدة.
- إضافة بيانات مخطط جديدة لسلسلة المخطط.
- كتابة العرض التقديمي المعدل إلى ملف PPTX.
هذا الكود JavaScript يوضح كيفية إنشاء مخطط متعدد الفئات:
var pres = new aspose.slides.Presentation();
try {
var ch = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.ClusteredColumn, 100, 100, 600, 450);
ch.getChartData().getSeries().clear();
ch.getChartData().getCategories().clear();
var fact = ch.getChartData().getChartDataWorkbook();
fact.clear(0);
var defaultWorksheetIndex = 0;
var category = ch.getChartData().getCategories().add(fact.getCell(0, "c2", "A"));
category.getGroupingLevels().setGroupingItem(1, "Group1");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c3", "B"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c4", "C"));
category.getGroupingLevels().setGroupingItem(1, "Group2");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c5", "D"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c6", "E"));
category.getGroupingLevels().setGroupingItem(1, "Group3");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c7", "F"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c8", "G"));
category.getGroupingLevels().setGroupingItem(1, "Group4");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c9", "H"));
// إضافة السلسلة
var series = ch.getChartData().getSeries().add(fact.getCell(0, "D1", "Series 1"), aspose.slides.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));
// Save presentation with chart
pres.save("AsposeChart_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات خريطة
مخطط الخريطة هو تصور لمنطقة تحتوي على بيانات. تُستعمل مخططات الخريطة لمقارنة البيانات أو القيم عبر المناطق الجغرافية.
الخطوات: إنشاء مخطط خريطة في JavaScript | الخطوات: إنشاء مخطط PowerPoint خريطة في JavaScript | الخطوات: إنشاء مخطط عرض تقديمي PowerPoint خريطة في JavaScript
هذا الكود JavaScript يوضح كيفية إنشاء مخطط خريطة:
let pres = new aspose.slides.Presentation();
try {
let chart = pres.getSlides().get_Item(0).getShapes().addChart(aspose.slides.ChartType.Map, 50, 50, 500, 400);
pres.save("mapChart.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
إنشاء مخططات مركبة
المخطط المركب (أو مخطط المزيج) يجمع نوعين أو أكثر من المخططات في رسم بياني واحد. يتيح لك هذا المخطط إبراز أو مقارنة أو فحص الفروق بين مجموعتين أو أكثر من البيانات، مما يساعدك على تحديد العلاقات بينها.

الكود JavaScript التالي يوضح كيفية إنشاء المخطط المركب المعروض أعلاه في عرض تقديمي PowerPoint:
function createComboChart() {
let presentation = new aspose.slides.Presentation();
let slide = presentation.getSlides().get_Item(0);
try {
let chart = createChartWithFirstSeries(slide);
addSecondSeriesToChart(chart);
addThirdSeriesToChart(chart);
setPrimaryAxesFormat(chart);
setSecondaryAxesFormat(chart);
presentation.save("combo-chart.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}
function createChartWithFirstSeries(slide) {
let chart = slide.getShapes().addChart(aspose.slides.ChartType.ClusteredColumn, 50, 50, 600, 400);
// تعيين عنوان المخطط.
chart.setTitle(true);
chart.getChartTitle().addTextFrameForOverriding("Chart Title");
chart.getChartTitle().setOverlay(false);
let titleParagraph = chart.getChartTitle().getTextFrameForOverriding().getParagraphs().get_Item(0);
let titleFormat = titleParagraph.getParagraphFormat().getDefaultPortionFormat();
titleFormat.setFontBold(java.newByte(aspose.slides.NullableBool.False));
titleFormat.setFontHeight(18);
// تعيين وسيلة إيضاح المخطط.
chart.getLegend().setPosition(aspose.slides.LegendPositionType.Bottom);
chart.getLegend().getTextFormat().getPortionFormat().setFontHeight(12);
// حذف السلاسل والفئات المولدة افتراضيًا.
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
const worksheetIndex = 0;
let workbook = chart.getChartData().getChartDataWorkbook();
// إضافة فئات جديدة.
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 1, 0, "Category 1"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 2, 0, "Category 2"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 3, 0, "Category 3"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 4, 0, "Category 4"));
// إضافة السلسلة الأولى.
let seriesNameCell = workbook.getCell(worksheetIndex, 0, 1, "Series 1");
let series = chart.getChartData().getSeries().add(seriesNameCell, chart.getType());
series.getParentSeriesGroup().setOverlap(java.newByte(-25));
series.getParentSeriesGroup().setGapWidth(220);
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 1, 1, 4.3));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 2, 1, 2.5));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 3, 1, 3.5));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 4, 1, 4.5));
return chart;
}
function addSecondSeriesToChart(chart) {
let workbook = chart.getChartData().getChartDataWorkbook();
const worksheetIndex = 0;
let seriesNameCell = workbook.getCell(worksheetIndex, 0, 2, "Series 2");
let series = chart.getChartData().getSeries().add(seriesNameCell, aspose.slides.ChartType.ClusteredColumn);
series.getParentSeriesGroup().setOverlap(java.newByte(-25));
series.getParentSeriesGroup().setGapWidth(220);
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 1, 2, 2.4));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 2, 2, 4.4));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 3, 2, 1.8));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 4, 2, 2.8));
}
function addThirdSeriesToChart(chart) {
let workbook = chart.getChartData().getChartDataWorkbook();
const worksheetIndex = 0;
let seriesNameCell = workbook.getCell(worksheetIndex, 0, 3, "Series 3");
let series = chart.getChartData().getSeries().add(seriesNameCell, aspose.slides.ChartType.Line);
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 1, 3, 2.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 2, 3, 2.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 3, 3, 3.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 4, 3, 5.0));
series.setPlotOnSecondAxis(true);
}
function setPrimaryAxesFormat(chart) {
// تعيين المحور الأفقي.
let horizontalAxis = chart.getAxes().getHorizontalAxis();
horizontalAxis.getTextFormat().getPortionFormat().setFontHeight(12);
horizontalAxis.getFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
setAxisTitle(horizontalAxis, "X Axis");
// تعيين المحور العمودي.
let verticalAxis = chart.getAxes().getVerticalAxis();
verticalAxis.getTextFormat().getPortionFormat().setFontHeight(12);
verticalAxis.getFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
setAxisTitle(verticalAxis, "Y Axis 1");
// تعيين لون خطوط الشبكة العمودية الرئيسية.
let majorGridLinesFormat = verticalAxis.getMajorGridLinesFormat().getLine().getFillFormat();
majorGridLinesFormat.setFillType(java.newByte(aspose.slides.FillType.Solid));
majorGridLinesFormat.getSolidFillColor().setColor(java.newInstanceSync("java.awt.Color", 217, 217, 217));
}
function setSecondaryAxesFormat(chart) {
// تعيين المحور الأفقي الثانوي.
let secondaryHorizontalAxis = chart.getAxes().getSecondaryHorizontalAxis();
secondaryHorizontalAxis.setPosition(aspose.slides.AxisPositionType.Bottom);
secondaryHorizontalAxis.setCrossType(aspose.slides.CrossesType.Maximum);
secondaryHorizontalAxis.setVisible(false);
secondaryHorizontalAxis.getMajorGridLinesFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
secondaryHorizontalAxis.getMinorGridLinesFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
// تعيين المحور العمودي الثانوي.
let secondaryVerticalAxis = chart.getAxes().getSecondaryVerticalAxis();
secondaryVerticalAxis.setPosition(aspose.slides.AxisPositionType.Right);
secondaryVerticalAxis.getTextFormat().getPortionFormat().setFontHeight(12);
secondaryVerticalAxis.getFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
secondaryVerticalAxis.getMajorGridLinesFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
secondaryVerticalAxis.getMinorGridLinesFormat().getLine().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
setAxisTitle(secondaryVerticalAxis, "Y Axis 2");
}
function setAxisTitle(axis, axisTitle) {
axis.setTitle(true);
axis.getTitle().setOverlay(false);
let titleParagraph = axis.getTitle().addTextFrameForOverriding(axisTitle).getParagraphs().get_Item(0);
let titleFormat = titleParagraph.getParagraphFormat().getDefaultPortionFormat();
titleFormat.setFontBold(java.newByte(aspose.slides.NullableBool.False));
titleFormat.setFontHeight(12);
}
تحديث المخططات
الخطوات: تحديث مخطط PowerPoint في JavaScript | الخطوات: تحديث مخطط العروض التقديمية في JavaScript | الخطوات: تحديث مخطط عرض تقديمي PowerPoint في JavaScript
- إنشاء مثيل من الفئة Presentation التي تمثل العرض التقديمي المحتوي على المخطط المراد تحديثه.
- الحصول على مرجع الشريحة باستخدام فهرستها.
- استعراض جميع الأشكال للعثور على المخطط المطلوب.
- الوصول إلى ورقة بيانات المخطط.
- تعديل بيانات سلسلة المخطط عن طريق تغيير قيم السلسلة.
- إضافة سلسلة جديدة وتعبئة البيانات فيها.
- كتابة العرض التقديمي المعدل كملف PPTX.
هذا الكود JavaScript يوضح كيفية تحديث مخطط:
var pres = new aspose.slides.Presentation();
try {
// الوصول إلى أول شريحة
var sld = pres.getSlides().get_Item(0);
// الحصول على المخطط بالبيانات الافتراضية
var chart = sld.getShapes().get_Item(0);
// تعيين فهرس ورقة بيانات المخطط
var defaultWorksheetIndex = 0;
// الحصول على ورقة عمل بيانات المخطط
var fact = chart.getChartData().getChartDataWorkbook();
// تعديل اسم فئة المخطط
fact.getCell(defaultWorksheetIndex, 1, 0, "Modified Category 1");
fact.getCell(defaultWorksheetIndex, 2, 0, "Modified Category 2");
// أخذ السلسلة الأولى للمخطط
var series = chart.getChartData().getSeries().get_Item(0);
// الآن يتم تحديث بيانات السلسلة
fact.getCell(defaultWorksheetIndex, 0, 1, "New_Series1");// تعديل اسم السلسلة
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, "New_Series2");// تعديل اسم السلسلة
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, "Series 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(aspose.slides.ChartType.ClusteredCylinder);
// حفظ العرض التقديمي مع المخطط
pres.save("AsposeChartModified_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
تعيين نطاق البيانات للمخططات
لتعيين نطاق البيانات لمخطط، قم بما يلي:
- إنشاء مثيل من الفئة Presentation التي تمثل العرض التقديمي المحتوي على المخطط.
- الحصول على مرجع الشريحة عبر فهرسها.
- استعراض جميع الأشكال للعثور على المخطط المطلوب.
- الوصول إلى بيانات المخطط وتعيين النطاق.
- حفظ العرض التقديمي المعدل كملف PPTX.
هذا الكود JavaScript يوضح كيفية تعيين نطاق البيانات لمخطط:
var pres = new aspose.slides.Presentation();
try {
var slide = pres.getSlides().get_Item(0);
var chart = slide.getShapes().get_Item(0);
chart.getChartData().setRange("Sheet1!A1:B4");
pres.save("SetDataRange_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
استخدام العلامات الافتراضية في المخططات
عند استخدام علامة افتراضية في المخططات، تحصل كل سلسلة مخطط على رموز علامة افتراضية مختلفة تلقائيًا.
هذا الكود JavaScript يوضح كيفية تعيين علامة سلسلة مخطط تلقائيًا:
var pres = new aspose.slides.Presentation();
try {
var slide = pres.getSlides().get_Item(0);
var chart = slide.getShapes().addChart(aspose.slides.ChartType.LineWithMarkers, 10, 10, 400, 400);
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
var fact = chart.getChartData().getChartDataWorkbook();
chart.getChartData().getSeries().add(fact.getCell(0, 0, 1, "Series 1"), chart.getType());
var 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, 2, 1, 23));
chart.getChartData().getCategories().add(fact.getCell(0, 3, 0, "C3"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 3, 1, -10));
chart.getChartData().getCategories().add(fact.getCell(0, 4, 0, "C4"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 4, 1, null));
chart.getChartData().getSeries().add(fact.getCell(0, 0, 2, "Series 2"), chart.getType());
// خذ السلسلة الثانية للمخطط
var series2 = chart.getChartData().getSeries().get_Item(1);
// الآن يتم تعبئة بيانات السلسلة
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 1, 2, 30));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 2, 2, 10));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 3, 2, 60));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 4, 2, 40));
chart.setLegend(true);
chart.getLegend().setOverlay(false);
pres.save("DefaultMarkersInChart.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
الأسئلة المتكررة
ما هي أنواع المخططات التي تدعمها Aspose.Slides؟
تدعم Aspose.Slides مجموعة واسعة من أنواع المخططات، بما في ذلك العمودية، الخطية، الفطيرة، المساحية، التشتت، المُحَدِّد تَكرار، الرادار، والعديد غيرها. تتيح لك هذه المرونة اختيار النوع الأنسب لتصوير بياناتك.
كيف يمكن إضافة مخطط جديد إلى شريحة؟
لإضافة مخطط، تقوم أولاً بإنشاء مثيل من الفئة Presentation؛ ثم تسترجع الشريحة المطلوبة باستخدام فهرستها؛ ثم تستدعي الطريقة لإضافة مخطط، مع تحديد نوع المخطط والبيانات الأولية. يندمج المخطط مباشرةً في عرضك التقديمي.
كيف يمكن تحديث البيانات المعروضة في مخطط؟
يمكنك تحديث بيانات المخطط من خلال الوصول إلى دفتر بياناته (ChartDataWorkbook)، مسح أي سلاسل وفئات افتراضية، ثم إضافة بياناتك المخصصة. يتيح لك ذلك تجديد المخطط برمجياً لتعكس أحدث البيانات.
هل يمكن تخصيص مظهر المخطط؟
نعم، تقدم Aspose.Slides خيارات تخصيص واسعة. يمكن تعديل الألوان، الخطوط، التسميات، الأساطير، وغيرها من عناصر التنسيق لتلائم متطلبات التصميم الخاصة بك.