بهینهسازی محاسبات نمودار برای ارائهها در Python
بررسی کلی
Aspose.Slides APIهایی برای کار با محاسبات نمودار و دادههای طرحبندی در ارائهها فراهم میکند. این مقاله نحوه بازیابی مقادیر واقعی عناصر نمودار، از جمله موقعیت و اندازه واقعی عناصری که ActualLayout را پیادهسازی میکنند و مقادیر واقعی محورهای نمودار را نشان میدهد. همچنین توضیح میدهد که این مقادیر پس از اعتبارسنجی طرحبندی نمودار پر میشوند.
علاوه بر این، مقاله نشان میدهد چگونه موقعیت واقعی عناصر نمودار والد را به دست آورید و چگونه مؤلفههای نمودار مانند عنوان، محورها، لگند و خطوط شبکه را مخفی کنید. این مثالها به شما کمک میکنند اطلاعات طرحبندی نمودار را بررسی کرده و دیداری عناصر نمودار را در ارائههای PowerPoint بهصورت برنامهنویسی کنترل کنید.
محاسبه مقادیر واقعی عناصر نمودار
Aspose.Slides برای Python از طریق .NET یک API ساده برای دریافت این ویژگیها فراهم میکند. این به شما کمک میکند مقادیر واقعی عناصر نمودار را محاسبه کنید. مقادیر واقعی شامل موقعیت عناصری است که از کلاس IActualLayout ارثبری میکنند (IActualLayout.ActualX, IActualLayout.ActualY, IActualLayout.ActualWidth, IActualLayout.ActualHeight) و مقادیر واقعی محورها (IAxis.ActualMaxValue, IAxis.ActualMinValue, IAxis.ActualMajorUnit, IAxis.ActualMinorUnit, IAxis.ActualMajorUnitScale, IAxis.ActualMinorUnitScale).
import aspose.slides.charts as charts
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
chart = pres.slides[0].shapes.add_chart(charts.ChartType.CLUSTERED_COLUMN, 100, 100, 500, 350)
chart.validate_chart_layout()
maxValue = chart.axes.vertical_axis.actual_max_value
minValue = chart.axes.vertical_axis.actual_min_value
majorUnit = chart.axes.horizontal_axis.actual_major_unit
minorUnit = chart.axes.horizontal_axis.actual_minor_unit
محاسبه موقعیت واقعی عناصر نمودار والد
Aspose.Slides برای Python از طریق .NET یک API ساده برای دریافت این ویژگیها فراهم میکند. ویژگیهای IActualLayout اطلاعاتی درباره موقعیت واقعی عنصر نمودار والد ارائه میدهند. لازم است پیش از آن متد IChart.ValidateChartLayout() فراخوانی شود تا ویژگیها با مقادیر واقعی پر شوند.
import aspose.slides.charts as charts
import aspose.slides as slides
with slides.Presentation("pres.pptx") as pres:
chart = pres.slides[0].shapes.add_chart(charts.ChartType.CLUSTERED_COLUMN, 100, 100, 500, 350)
chart.validate_chart_layout()
x = chart.plot_area.actual_x
y = chart.plot_area.actual_y
w = chart.plot_area.actual_width
h = chart.plot_area.actual_height
مخفی کردن اطلاعات از نمودار
این موضوع به شما کمک میکند نحوه مخفی کردن اطلاعات از نمودار را درک کنید. با استفاده از Aspose.Slides برای Python از طریق .NET میتوانید عنوان، محور عمودی، محور افقی و خطوط شبکه را از نمودار مخفی کنید. مثال کد زیر نشان میدهد چگونه از این ویژگیها استفاده کنید.
import aspose.slides.charts as charts
import aspose.slides as slides
with slides.Presentation() as pres:
slide = pres.slides[0]
chart = slide.shapes.add_chart(charts.ChartType.LINE_WITH_MARKERS, 140, 118, 320, 370)
# پنهانکردن عنوان نمودار
chart.has_title = False
# پنهانکردن محور مقدارها
chart.axes.vertical_axis.is_visible = False
# نمایش محور دستهبندی
chart.axes.horizontal_axis.is_visible = False
# پنهانکردن لگند
chart.has_legend = False
# پنهانکردن خطوط شبکه اصلی
chart.axes.horizontal_axis.major_grid_lines_format.line.fill_format.fill_type = slides.FillType.NO_FILL
#for i in range(len(chart.chart_data.series)):
# chart.chart_data.series.remove_at(i)
series = chart.chart_data.series[0]
series.marker.symbol = charts.MarkerStyleType.CIRCLE
series.labels.default_data_label_format.show_value = True
series.labels.default_data_label_format.position = charts.LegendDataLabelPosition.TOP
series.marker.size = 15
# تنظیم رنگ خط سری
series.format.line.fill_format.fill_type = slides.FillType.SOLID
series.format.line.fill_format.solid_fill_color.color = draw.Color.purple
series.format.line.dash_style = slides.LineDashStyle.SOLID
pres.save("HideInformationFromChart.pptx", slides.export.SaveFormat.PPTX)
پرسشهای متداول
آیا دفترهای کار Excel خارجی میتوانند بهعنوان منبع داده عمل کنند و این بر بازمحاسبه چه تاثیری دارد؟
بله. یک نمودار میتواند به دفتر کار خارجی ارجاع دهد: هنگامی که منبع خارجی را متصل یا تازهسازی میکنید، فرمولها و مقادیر از آن دفتر کار گرفته میشوند و نمودار در حین عملیات باز/ویرایش بهروزرسانیها را منعکس میکند. API به شما امکان میدهد مسیر مشخص کردن دفتر کار خارجی را تنظیم و دادههای لینکشده را مدیریت کنید.
آیا میتوانم خطوط روند را بدون پیادهسازی رگرسیون خودمحاسب کنم و نمایش دهم؟
بله. خطوطروند (خطی، نمایی و سایر) توسط Aspose.Slides اضافه و بهروز میشوند؛ پارامترهای آنها بهصورت خودکار از دادههای سری محاسبه میشوند، بنابراین نیازی به پیادهسازی محاسبات خودتان ندارید.
اگر یک ارائه دارای چندین نمودار با لینکهای خارجی باشد، آیا میتوانم کنترل کنم هر نمودار از کدام دفتر کار برای مقادیر محاسبهشده استفاده کند؟
بله. هر نمودار میتواند به دفتر کار خارجی خود اشاره کند، یا میتوانید برای هر نمودار یک دفتر کار خارجی را بهصورت مستقل ایجاد/جایگزین کنید.