تنسيق المخطط
ضبط مظهر المخطط
فيأنواع المخططات، قدمنا مقدمة موجزة عن أنواع المخططات وعناصر الرسوم البيانية التي يقدمها Aspose.Cells.
في هذه المقالة ، نناقش كيفية تخصيص مظهر المخططات من خلال تعيين عدد من الخصائص المختلفة:
- تحديد منطقة المخطط.
- تحديد خطوط الرسم البياني.
- تطبيق السمات.
- تحديد العناوين للمخططات والمحاور.
- العمل مع خطوط الشبكة.
- وضع حدود للجدران الخلفية والجانبية.
إعداد منطقة المخطط
توجد أنواع مختلفة من المساحات في المخطط ويوفر Aspose.Cells مرونة في تعديل مظهر كل منطقة. يمكن للمطورين تطبيق إعدادات تنسيق مختلفة على منطقة ما عن طريق تغيير لون المقدمة ولون الخلفية وتنسيق التعبئة وما إلى ذلك.
في المثال الموضح أدناه ، قمنا بتطبيق إعدادات تنسيق مختلفة على أنواع مختلفة من مناطق الرسم البياني. تشمل هذه المناطق:
بعد تنفيذ رمز المثال ، ستتم إضافة مخطط عمودي إلى ورقة العمل كما هو موضح أدناه:
مخطط عمودي بمساحات معبأة
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SettingChartArea.class) + "charts/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
WorksheetCollection worksheets = workbook.getWorksheets(); | |
// Obtaining the reference of the newly added worksheet by passing its | |
// sheet index | |
Worksheet worksheet = worksheets.get(0); | |
Cells cells = worksheet.getCells(); | |
// Adding a sample value to "A1" cell | |
cells.get("A1").setValue(50); | |
// Adding a sample value to "A2" cell | |
cells.get("A2").setValue(100); | |
// Adding a sample value to "A3" cell | |
cells.get("A3").setValue(150); | |
// Adding a sample value to "B1" cell | |
cells.get("B1").setValue(60); | |
// Adding a sample value to "B2" cell | |
cells.get("B2").setValue(32); | |
// Adding a sample value to "B3" cell | |
cells.get("B3").setValue(50); | |
// Adding a chart to the worksheet | |
ChartCollection charts = worksheet.getCharts(); | |
// Accessing the instance of the newly added chart | |
int chartIndex = charts.add(ChartType.COLUMN, 5, 0, 15, 7); | |
Chart chart = charts.get(chartIndex); | |
// Adding NSeries (chart data source) to the chart ranging from "A1" | |
// cell | |
SeriesCollection nSeries = chart.getNSeries(); | |
nSeries.add("A1:B3", true); | |
// Setting the foreground color of the plot area | |
ChartFrame plotArea = chart.getPlotArea(); | |
Area area = plotArea.getArea(); | |
area.setForegroundColor(Color.getBlue()); | |
// Setting the foreground color of the chart area | |
ChartArea chartArea = chart.getChartArea(); | |
area = chartArea.getArea(); | |
area.setForegroundColor(Color.getYellow()); | |
// Setting the foreground color of the 1st NSeries area | |
Series aSeries = nSeries.get(0); | |
area = aSeries.getArea(); | |
area.setForegroundColor(Color.getRed()); | |
// Setting the foreground color of the area of the 1st NSeries point | |
ChartPointCollection chartPoints = aSeries.getPoints(); | |
ChartPoint point = chartPoints.get(0); | |
point.getArea().setForegroundColor(Color.getCyan()); | |
// Save the Excel file | |
workbook.save(dataDir + "SettingChartArea_out.xls"); | |
// Print message | |
System.out.println("ChartArea is settled successfully."); |
تحديد خطوط الرسم البياني
يمكن للمطورين أيضًا تطبيق أنواع مختلفة من الأنماط على الخطوط أو علامات البيانات في ملفالسلسلةكما هو موضح أدناه في المثال. يؤدي تنفيذ رمز المثال إلى إضافة مخطط عمودي إلى ورقة العمل كما هو موضح أدناه:
مخطط العمود بعد تطبيق أنماط الخط
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SettingChartLines.class) + "charts/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
WorksheetCollection worksheets = workbook.getWorksheets(); | |
// Obtaining the reference of the newly added worksheet by passing its | |
// sheet index | |
Worksheet worksheet = worksheets.get(0); | |
Cells cells = worksheet.getCells(); | |
// Adding a chart to the worksheet | |
ChartCollection charts = worksheet.getCharts(); | |
Chart chart = charts.get(0); | |
// Adding NSeries (chart data source) to the chart ranging from "A1" | |
// cell | |
SeriesCollection nSeries = chart.getNSeries(); | |
nSeries.add("A1:B3", true); | |
Series aSeries = nSeries.get(0); | |
Line line = aSeries.getSeriesLines(); | |
line.setStyle(LineType.DOT); | |
// Applying a triangular marker style on the data markers of an NSeries | |
aSeries.getMarker().setMarkerStyle(ChartMarkerType.TRIANGLE); | |
// Setting the weight of all lines in an NSeries to medium | |
aSeries = nSeries.get(1); | |
line = aSeries.getSeriesLines(); | |
line.setWeight(WeightType.MEDIUM_LINE); | |
// Save the Excel file | |
workbook.save(dataDir + "SettingChartLines_out.xls"); | |
// Print message | |
System.out.println("ChartArea is settled successfully."); |
تطبيق سمات Microsoft Excel 2007/2010 على المخططات
يمكن للمطورين تطبيق سمات وألوان Microsoft مختلفة على برنامج Excelالسلسلةأو كائنات أخرى في المخطط كما هو موضح في المثال أدناه.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(ApplyingThemes.class) + "charts/"; | |
// Instantiate the workbook to open the file that contains a chart | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Get the first worksheet | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Get the first chart in the sheet | |
Chart chart = worksheet.getCharts().get(0); | |
// Specify the FilFormat's type to Solid Fill of the first series | |
chart.getNSeries().get(0).getArea().getFillFormat().setFillType(FillType.SOLID); | |
// Get the CellsColor of SolidFill | |
CellsColor cc = chart.getNSeries().get(0).getArea().getFillFormat().getSolidFill().getCellsColor(); | |
// Create a theme in Accent style | |
cc.setThemeColor(new ThemeColor(ThemeColorType.ACCENT_6, 0.6)); | |
// Apply the them to the series | |
chart.getNSeries().get(0).getArea().getFillFormat().getSolidFill().setCellsColor(cc); | |
// Save the Excel file | |
workbook.save(dataDir + "AThemes_out.xlsx"); |
تحديد عناوين المخططات أو المحاور
يمكنك استخدام Microsoft Excel لتعيين عناوين المخطط ومحاوره في بيئة WYSIWYG كما هو موضح أدناه.
تحديد عناوين الرسم البياني ومحاوره باستخدام Microsoft Excel
يسمح Aspose.Cells أيضًا للمطورين بتعيين عناوين المخطط ومحاوره في وقت التشغيل. تحتوي جميع المخططات ومحاورها على ملفTitle.setTextالطريقة التي يمكن استخدامها لتعيين عناوينها كما هو موضح أدناه في مثال. بعد تنفيذ رمز المثال ، ستتم إضافة مخطط عمودي إلى ورقة العمل كما هو موضح أدناه:
مخطط العمود بعد تحديد العناوين
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SettingTitlesAxes.class) + "charts/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
WorksheetCollection worksheets = workbook.getWorksheets(); | |
// Obtaining the reference of the newly added worksheet by passing its | |
// sheet index | |
Worksheet worksheet = worksheets.get(0); | |
Cells cells = worksheet.getCells(); | |
// Adding a chart to the worksheet | |
ChartCollection charts = worksheet.getCharts(); | |
// Accessing the instance of the newly added chart | |
int chartIndex = charts.add(ChartType.COLUMN, 5, 0, 15, 7); | |
Chart chart = charts.get(chartIndex); | |
// Setting the title of a chart | |
Title title = chart.getTitle(); | |
title.setText("ASPOSE"); | |
// Setting the font color of the chart title to blue | |
Font font = title.getFont(); | |
font.setColor(Color.getBlue()); | |
// Setting the title of category axis of the chart | |
Axis categoryAxis = chart.getCategoryAxis(); | |
title = categoryAxis.getTitle(); | |
title.setText("Category"); | |
// Setting the title of value axis of the chart | |
Axis valueAxis = chart.getValueAxis(); | |
title = valueAxis.getTitle(); | |
title.setText("Value"); | |
// Adding NSeries (chart data source) to the chart ranging from "A1" | |
// cell | |
SeriesCollection nSeries = chart.getNSeries(); | |
nSeries.add("A1:B3", true); | |
// Setting the foreground color of the plot area | |
ChartFrame plotArea = chart.getPlotArea(); | |
Area area = plotArea.getArea(); | |
area.setForegroundColor(Color.getBlue()); | |
// Setting the foreground color of the chart area | |
ChartArea chartArea = chart.getChartArea(); | |
area = chartArea.getArea(); | |
area.setForegroundColor(Color.getYellow()); | |
// Setting the foreground color of the 1st NSeries area | |
Series aSeries = nSeries.get(0); | |
area = aSeries.getArea(); | |
area.setForegroundColor(Color.getRed()); | |
// Setting the foreground color of the area of the 1st NSeries point | |
ChartPointCollection chartPoints = aSeries.getPoints(); | |
ChartPoint point = chartPoints.get(0); | |
point.getArea().setForegroundColor(Color.getCyan()); | |
// Save the Excel file | |
workbook.save(dataDir + "SettingTitlesAxes_out.xls"); | |
// Print message | |
System.out.println("Chart Title is changed successfully."); |
تعيين خطوط الشبكة الرئيسية
إخفاء خطوط الشبكة الرئيسية
يمكن للمطورين التحكم في رؤية خطوط الشبكة الرئيسية باستخدامsetVisible طريقةخطموضوع. بعد إخفاء خطوط الشبكة الرئيسية ، يظهر مخطط العمود المضاف إلى ورقة العمل بالشكل التالي:
مخطط عمودي مع خطوط شبكة رئيسية مخفية
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Hiding the major gridlines of value axis | |
Axis valueAxis = chart.getValueAxis(); | |
Line majorGridLines = valueAxis.getMajorGridLines(); | |
majorGridLines.setVisible(false); |
تغيير إعدادات خطوط الشبكة الرئيسية
لا يستطيع المطورون فقط التحكم في رؤية خطوط الشبكة الرئيسية ولكن أيضًا في الخصائص الأخرى بما في ذلك لونها وما إلى ذلك. بعد تعيين لون خطوط الشبكة الرئيسية ، سيظهر مخطط العمود المضاف إلى ورقة العمل بالشكل التالي:
مخطط عمودي بخطوط شبكة رئيسية ملونة
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Setting the color of major gridlines of value axis to silver | |
Axis categoryAxis = chart.getCategoryAxis(); | |
categoryAxis.getMajorGridLines().setColor(Color.getSilver()); |
وضع حدود للجدران الخلفية والجانبية
منذ إصدار Microsoft Excel 2007 ، تم تقسيم جدران المخطط ثلاثي الأبعاد إلى جزأين: جدار جانبي وجدار خلفي ، لذلك يتعين علينا استخدام جزأينالجدران كائنات لتمثيلها بشكل منفصل ويمكنك الوصول إليها باستخدامChart.getBackWall () وChart.getSideWall ().
يوضح المثال الموضح أدناه كيفية تعيين حدود الجدار الجانبي باستخدام سمات مختلفة.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Get the side wall border line | |
Line sideLine = chart.getSideWall().getBorder(); | |
// Make it visible | |
sideLine.setVisible(true); | |
// Set the solid line | |
sideLine.setStyle(LineType.SOLID); | |
// Set the line width | |
sideLine.setWeight(10); | |
// Set the color | |
sideLine.setColor(Color.getBlack()); |
قم بتغيير موضع المخطط وحجمه
في بعض الأحيان ، تريد تغيير موضع أو حجم المخطط الجديد أو الموجود داخل ورقة العمل. يوفر Aspose.Cells ملفChart.getChartObject ()خاصية لتحقيق ذلك. يمكنك استخدام خصائصه الفرعية لتغيير حجم المخطط بجديدارتفاع والعرض أو إعادة وضعه مع جديد** X ** و**Y ** إحداثيات.
تعديل موضع الرسم البياني وحجمه
لتغيير موضع الرسم البياني (إحداثيات س ، ص) وحجمه (ارتفاع ، عرض) ، استخدم هذه الخصائص:
- Chart.getChartObject (). get / setWidth ()
- Chart.getChartObject (). get / setHeight ()
- Chart.getChartObject (). get / setX ()
- Chart.getChartObject (). get / setY ()
يوضح المثال التالي استخدام الخصائص المذكورة أعلاه. يقوم بتحميل المصنف الحالي الذي يحتوي على مخطط في ورقة العمل الأولى الخاصة به. ثم يعيد حجم المخطط ويعيد مواضعه ويحفظ المصنف.
قبل تنفيذ نموذج التعليمات البرمجية ، يبدو الملف المصدر كما يلي:
حجم المخطط وموضعه قبل تنفيذ نموذج التعليمات البرمجية
بعد التنفيذ ، يبدو ملف الإخراج كالتالي:
حجم المخطط وموضعه بعد تنفيذ نموذج التعليمات البرمجية
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(ChangeChartPositionAndSize.class) + "charts/"; | |
String filePath = dataDir + "book1.xls"; | |
Workbook workbook = new Workbook(filePath); | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Load the chart from source worksheet | |
Chart chart = worksheet.getCharts().get(0); | |
// Resize the chart | |
chart.getChartObject().setWidth(400); | |
chart.getChartObject().setHeight(300); | |
// Reposition the chart | |
chart.getChartObject().setX(250); | |
chart.getChartObject().setY(150); | |
// Output the file | |
workbook.save(dataDir + "ChangeChartPositionAndSize_out.xls"); | |
// Print message | |
System.out.println("Position and Size of Chart is changed successfully."); |
معالجة مخططات المصمم
هناك وقت قد تحتاج فيه إلى معالجة المخططات أو تعديلها في ملفات قالب المصمم. يدعم Aspose.Cells بالكامل معالجة مخططات المصمم بمحتوياتها وعناصرها. يمكن الاحتفاظ بالبيانات ومحتويات المخطط وصورة الخلفية والتنسيق بدقة.
معالجة مخططات المصمم في ملفات القوالب
لمعالجة مخططات المصمم في ملف قالب ، استخدم كافة استدعاءات API المتعلقة بالرسم البياني. على سبيل المثال ، استخدمWorksheet.getCharts للحصول على مجموعة المخططات الموجودة في ملف القالب.
إنشاء مخطط
يوضح المثال التالي كيفية إنشاء مخطط دائري. سوف نتعامل مع هذا المخطط لاحقًا. يتم إنشاء الإخراج التالي بواسطة الكود.
مخطط الإدخال الدائري
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(CreateChart.class) + "charts/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Obtaining the reference of the first worksheet | |
WorksheetCollection worksheets = workbook.getWorksheets(); | |
Worksheet sheet = worksheets.get(0); | |
// Adding some sample value to cells | |
Cells cells = sheet.getCells(); | |
Cell cell = cells.get("A1"); | |
cell.setValue(50); | |
cell = cells.get("A2"); | |
cell.setValue(100); | |
cell = cells.get("A3"); | |
cell.setValue(150); | |
cell = cells.get("B1"); | |
cell.setValue(4); | |
cell = cells.get("B2"); | |
cell.setValue(20); | |
cell = cells.get("B3"); | |
cell.setValue(50); | |
ChartCollection charts = sheet.getCharts(); | |
// Adding a chart to the worksheet | |
int chartIndex = charts.add(ChartType.PYRAMID, 5, 0, 15, 5); | |
Chart chart = charts.get(chartIndex); | |
// Adding NSeries (chart data source) to the chart ranging from "A1" | |
// cell to "B3" | |
SeriesCollection serieses = chart.getNSeries(); | |
serieses.add("A1:B3", true); | |
// Saving the Excel file | |
workbook.save(dataDir + "CreateChart_out.xls"); | |
// Print message | |
System.out.println("Workbook with chart is successfully created."); |
التلاعب في الرسم البياني
يوضح المثال التالي كيفية التعامل مع المخطط الحالي. في هذا المثال نقوم بتعديل الرسم البياني الذي تم إنشاؤه أعلاه. يتم إنشاء الإخراج التالي بواسطة الكود. لاحظ أن لون عنوان المخطط قد تغير من الأزرق إلى الأسود ، كما تم تغيير “إنجلترا 30000” إلى “المملكة المتحدة ، 30 ألفًا”.
تم تعديل المخطط الدائري
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(ModifyPieChart.class) + "charts/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "ModifyCharts.xlsx"); | |
// Obtaining the reference of the first worksheet | |
WorksheetCollection worksheets = workbook.getWorksheets(); | |
Worksheet sheet = worksheets.get(1); | |
// Load the chart from source worksheet | |
Chart chart = sheet.getCharts().get(0); | |
DataLabels datalabels = chart.getNSeries().get(0).getPoints().get(0).getDataLabels(); | |
datalabels.setText("aspose"); | |
// Saving the Excel file | |
workbook.save(dataDir + "ModifyPieChart_out.xls"); | |
// Print message | |
System.out.println("Pie chart is successfully modified."); |
معالجة مخطط خطي في قالب المصمم
في هذا المثال ، سنتعامل مع مخطط خطي. سنضيف بعض سلاسل البيانات إلى المخطط الحالي ونغير ألوان خطها.
أولاً ، ألق نظرة على مخطط خط المصمم.
مخطط خط الإدخال
الآن نحن نتعامل مع المخطط الخطي (الموجود في ملفlinechart.xls file) باستخدام الكود التالي. يتم إنشاء الإخراج التالي بواسطة الكود.
المخطط الخطي المتلاعب به
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(ModifyLineChart.class) + "charts/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Obtaining the reference of the first worksheet | |
WorksheetCollection worksheets = workbook.getWorksheets(); | |
Worksheet sheet = worksheets.get(0); | |
// Load the chart from source worksheet | |
Chart chart = sheet.getCharts().get(0); | |
// Adding NSeries (chart data source) to the chart ranging from "A1" | |
// cell to "B3" | |
SeriesCollection serieses = chart.getNSeries(); | |
serieses.add("{20,40,90}", true); | |
serieses.add("{110,70,220}", true); | |
// Saving the Excel file | |
workbook.save(dataDir + "ModifyLineChart_out.xls"); | |
// Print message | |
System.out.println("Line chart is successfully modified."); |
باستخدام خطوط سباركلينز
Microsoft يمكن لبرنامج Excel 2010 تحليل المعلومات بطرق أكثر من أي وقت مضى. يسمح للمستخدمين بتتبع اتجاهات البيانات المهمة وإبرازها باستخدام أدوات تحليل وتصور جديدة للبيانات. خطوط المؤشر هي مخططات مصغرة يمكنك وضعها داخل الخلايا بحيث يمكنك عرض البيانات والمخطط على نفس الجدول. عندما يتم استخدام خطوط المؤشرات بشكل صحيح ، يكون تحليل البيانات أسرع وأكثر دقة. كما أنها توفر عرضًا بسيطًا للمعلومات ، وتجنب أوراق العمل المزدحمة بالكثير من المخططات المزدحمة.
يوفر Aspose.Cells API لمعالجة خطوط المؤشرات في جداول البيانات.
خطوط سباركلينز في Microsoft Excel
لإدراج خطوط مؤشر في Microsoft Excel 2010:
- حدد الخلايا التي تريد ظهور خطوط المؤشر فيها. لتسهيل عرضها ، حدد الخلايا الموجودة بجانب البيانات.
- انقرإدراج على الشريط ثم اخترعمود في السباركلينز مجموعة.
- حدد أو أدخل نطاق الخلايا في ورقة العمل التي تحتوي على البيانات المصدر. تظهر الرسوم البيانية.
تساعدك Sparklines على رؤية الاتجاهات ، على سبيل المثال ، أو سجل الفوز أو الخسارة لدوري الكرة اللينة. يمكن أن تلخص Sparklines الموسم بأكمله لكل فريق في الدوري.
خطوط الشرارة باستخدام Aspose.Cells
يمكن للمطورين إنشاء أو حذف أو قراءة خطوط المؤشرات (في ملف القالب) باستخدام API المقدم بواسطة Aspose.Cells. بإضافة رسومات مخصصة لنطاق بيانات معين ، يتمتع المطورون بحرية إضافة أنواع مختلفة من المخططات الصغيرة إلى مناطق الخلايا المحددة.
يوضح المثال أدناه ميزة Sparklines. يوضح المثال كيفية:
- افتح ملف قالب بسيط.
- اقرأ معلومات خطوط المؤشرات لورقة عمل.
- أضف خطوط مؤشرات جديدة لنطاق بيانات معين إلى منطقة خلية.
- يحفظ ملف Excel على القرص.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(UsingSparklines.class) + "charts/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
WorksheetCollection worksheets = workbook.getWorksheets(); | |
// Obtaining the reference of the first worksheet | |
Worksheet worksheet = worksheets.get(0); | |
Cells cells = worksheet.getCells(); | |
System.out.println("Sparkline count: " + worksheet.getSparklineGroupCollection().getCount()); | |
for (int i = 0; i < worksheet.getSparklineGroupCollection().getCount(); i++) { | |
SparklineGroup g = worksheet.getSparklineGroupCollection().get(i); | |
System.out.println("sparkline group: type:" + g.getType()); | |
for (int j = 0; j < g.getSparklineCollection().getCount(); i++) { | |
Sparkline gg = g.getSparklineCollection().get(i); | |
System.out.println("sparkline: row:" + gg.getRow() + ", col:" + gg.getColumn() + ", dataRange:" | |
+ gg.getDataRange()); | |
} | |
} | |
// Add Sparklines | |
// Define the CellArea D2:D10 | |
CellArea ca = new CellArea(); | |
ca.StartColumn = 4; | |
ca.EndColumn = 4; | |
ca.StartRow = 1; | |
ca.EndRow = 7; | |
int idx = worksheet.getSparklineGroupCollection().add(SparklineType.COLUMN, "Sheet1!B2:D8", false, ca); | |
SparklineGroup group = worksheet.getSparklineGroupCollection().get(idx); | |
// Create CellsColor | |
CellsColor clr = workbook.createCellsColor(); | |
clr.setColor(Color.getChocolate()); | |
group.setSeriesColor(clr); | |
workbook.save(dataDir + "UsingSparklines_out.xls"); | |
// Print message | |
System.out.println("Workbook with chart is created successfully."); |
تطبيق تنسيق ثلاثي الأبعاد على الرسم البياني
قد تحتاج إلى أنماط مخططات ثلاثية الأبعاد حتى تتمكن من الحصول على نتائج السيناريو الخاص بك فقط. توفر واجهات برمجة التطبيقات Aspose.Cells API ذي الصلة لتطبيق تنسيق Microsoft Excel 2007 ثلاثي الأبعاد كما هو موضح في هذه المقالة.
ضبط تنسيق ثلاثي الأبعاد على الرسم البياني
يوجد مثال كامل أدناه لتوضيح كيفية إنشاء مخطط وتطبيق تنسيق Microsoft Excel 2007 3D. بعد تنفيذ رمز المثال أعلاه ، ستتم إضافة مخطط عمودي (مع تأثيرات ثلاثية الأبعاد) إلى ورقة العمل كما هو موضح أدناه.
مخطط عمودي بتنسيق ثلاثي الأبعاد
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(Applying3DFormat.class) + "charts/"; | |
// Instantiate a new Workbook | |
Workbook book = new Workbook(); | |
// Add a Data Worksheet | |
Worksheet dataSheet = book.getWorksheets().add("DataSheet"); | |
// Add Chart Worksheet | |
Worksheet sheet = book.getWorksheets().add("MyChart"); | |
// Put some values into the cells in the data worksheet | |
dataSheet.getCells().get("B1").putValue(1); | |
dataSheet.getCells().get("B2").putValue(2); | |
dataSheet.getCells().get("B3").putValue(3); | |
dataSheet.getCells().get("A1").putValue("A"); | |
dataSheet.getCells().get("A2").putValue("B"); | |
dataSheet.getCells().get("A3").putValue("C"); | |
// Define the Chart Collection | |
ChartCollection charts = sheet.getCharts(); | |
// Add a Column chart to the Chart Worksheet | |
int chartSheetIdx = charts.add(ChartType.COLUMN, 5, 0, 25, 15); | |
// Get the newly added Chart | |
Chart chart = book.getWorksheets().get(2).getCharts().get(0); | |
// Set the background/foreground color for PlotArea/ChartArea | |
chart.getPlotArea().getArea().setBackgroundColor(Color.getWhite()); | |
chart.getChartArea().getArea().setBackgroundColor(Color.getWhite()); | |
chart.getPlotArea().getArea().setForegroundColor(Color.getWhite()); | |
chart.getChartArea().getArea().setForegroundColor(Color.getWhite()); | |
// Hide the Legend | |
chart.setShowLegend(false); | |
// Add Data Series for the Chart | |
chart.getNSeries().add("DataSheet!B1:B3", true); | |
// Specify the Category Data | |
chart.getNSeries().setCategoryData("DataSheet!A1:A3"); | |
// Get the Data Series | |
Series ser = chart.getNSeries().get(0); | |
// Apply the 3D formatting | |
ShapePropertyCollection spPr = ser.getShapeProperties(); | |
Format3D fmt3d = spPr.getFormat3D(); | |
// Specify Bevel with its height/width | |
Bevel bevel = fmt3d.getTopBevel(); | |
bevel.setType(BevelPresetType.CIRCLE); | |
bevel.setHeight(5); | |
bevel.setWidth(9); | |
// Specify Surface material type | |
fmt3d.setSurfaceMaterialType(PresetMaterialType.WARM_MATTE); | |
// Specify surface lighting type | |
fmt3d.setSurfaceLightingType(LightRigType.THREE_POINT); | |
// Specify lighting angle | |
fmt3d.setLightingAngle(20); | |
// Specify Series background/foreground and line color | |
ser.getArea().setBackgroundColor(Color.getMaroon()); | |
ser.getArea().setForegroundColor(Color.getMaroon()); | |
ser.getBorder().setColor(Color.getMaroon()); | |
// Save the Excel file | |
book.save(dataDir + "A3DFormat_out.xls"); | |
// Print message | |
System.out.println("3D format is applied successfully."); |