محور التاريخ
سيناريوهات الاستخدام المحتملة
عند إنشاء رسم بياني من بيانات ورقة العمل التي تستخدم تواريخ، ويتم رسم التواريخ على طول المحور الأفقي (الفئة) في الرسم البياني، يقوم Aspose.cells تلقائيًا بتغيير المحور الفئة إلى محور تاريخ (مقياس زمني). يعرض محور التاريخ التواريخ وفقًا للترتيب الزمني بفواصل زمنية محددة أو وحدات قاعدية، مثل عدد الأيام، أو الأشهر، أو السنوات، حتى إذا كانت التواريخ على ورقة العمل ليست بترتيب تسلسلي أو بنفس الوحدات القاعدية. بشكل افتراضي، يحدد Aspose.cells وحدات الأساس لمحور التاريخ بناءً على أصغر فرق بين أي تاريخين في بيانات ورقة العمل. على سبيل المثال، إذا كانت لديك بيانات لأسعار الأسهم حيث أصغر فرق بين التواريخ هو سبعة أيام، فإن Excel يضبط الوحدة الأساسية على الأيام، ولكن يمكنك تغيير الوحدة الأساسية إلى أشهر أو سنوات إذا كنت ترغب في رؤية أداء السهم على مدى فترة زمنية أطول.
معاملة محور التاريخ مثل Microsoft Excel
يرجى الاطلاع على الكود النموذجي التالي الذي ينشئ ملف إكسل جديد ويضع قيم الرسم البياني في الورقة العمل الأولى. ثم نضيف رسم بياني ونعين نوع الـ Axis إلى TIME_SCALE ومن ثم نضبط الوحدات الأساسية على الأيام.
الكود المثالي
from aspose.cells import Workbook | |
from aspose.cells.charts import CategoryType, ChartTextDirectionType, ChartType, TimeUnit | |
from aspose.cells.drawing import FillType | |
from datetime import datetime | |
# Create an instance of Workbook | |
workbook = Workbook() | |
# Get the first worksheet | |
worksheet = workbook.worksheets[0] | |
# Add the sample values to cells | |
worksheet.cells.get("A1").put_value("Date") | |
# 14 means datetime format | |
style = worksheet.cells.style | |
style.number = 14 | |
# Put values to cells for creating chart | |
worksheet.cells.get("A2").set_style(style) | |
worksheet.cells.get("A2").put_value(datetime(2022, 6, 26)) | |
worksheet.cells.get("A3").set_style(style) | |
worksheet.cells.get("A3").put_value(datetime(2022, 5, 22)) | |
worksheet.cells.get("A4").set_style(style) | |
worksheet.cells.get("A4").put_value(datetime(2022, 8, 3)) | |
worksheet.cells.get("B1").put_value("Price") | |
worksheet.cells.get("B2").put_value(40) | |
worksheet.cells.get("B3").put_value(50) | |
worksheet.cells.get("B4").put_value(60) | |
# Adda chart to the worksheet | |
chartIndex = worksheet.charts.add(ChartType.COLUMN, 9, 6, 21, 13) | |
# Access the instance of the newly added chart | |
chart = worksheet.charts[chartIndex] | |
# Add SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B4" | |
chart.set_chart_data_range("A1:B4", True) | |
# Set the Axis type to Date time | |
chart.category_axis.category_type = CategoryType.TIME_SCALE | |
# Set the base unit for CategoryAxis to days | |
chart.category_axis.base_unit_scale = TimeUnit.DAYS | |
# Set the direction for the axis text to be vertical | |
chart.category_axis.tick_labels.direction_type = ChartTextDirectionType.VERTICAL | |
# Fill the PlotArea area with nothing | |
chart.plot_area.area.fill_format.fill_type = FillType.NONE | |
# Set max value of Y axis. | |
chart.value_axis.max_value = 70 | |
# Set major unit. | |
chart.value_axis.major_unit = 10.0 | |
# Save the file | |
workbook.save("DateAxis.xlsx") |