
Los gráficos se utilizan para la representación gráfica de los datos, lo que facilita el análisis. Por lo tanto, MS PowerPoint admite una variedad de gráficos para visualizar los datos de diferentes maneras. Entre todos, los gráficos más utilizados incluyen gráficos circulares, gráficos de líneas, gráficos de barras, histogramas, gráficos de cotizaciones, etc. En este artículo, aprenderá cómo crear estos gráficos en PowerPoint PPT o PPTX en Python.
- Biblioteca de Python para crear gráficos en PowerPoint
- Crear gráfico de columnas en PowerPoint en Python
- Crear gráfico de dispersión en PPT en Python
- Agregar gráfico circular en PPT en Python
- Agregar gráfico de histograma en PPT en Python
- Crear un gráfico de acciones en PowerPoint en Python
- Más sobre Gráficos
Biblioteca de Python para crear gráficos en PowerPoint PPT
Para crear gráficos en PowerPoint PPT/PPTX, usaremos Aspose.Slides for Python via .NET. Es una biblioteca rica en funciones que proporciona un paquete completo para crear y manipular presentaciones de PowerPoint. Puede instalarlo desde PyPI usando el siguiente comando pip.
> pip install aspose.slides
Aspose.Slides admite una variedad de gráficos que se pueden agregar a las presentaciones de forma dinámica. En las siguientes secciones, demostraremos cómo crear algunos tipos populares de gráficos.
Crear gráfico de columnas en PowerPoint PPT en Python
En esta sección, aprenderá cómo crear un gráfico de columnas en una presentación de PowerPoint en Python. Los siguientes son los pasos para realizar esta operación.
- Primero, crea una instancia de la clase Presentation.
- Obtenga la referencia de la diapositiva de Presentations.slides en un objeto.
- Agregue un gráfico de columnas agrupadas con datos predeterminados utilizando el método Slide.shapes.add\chart().
- Establezca el título del gráfico y otras propiedades, como el formato de texto.
- Acceda al Workbook de datos del gráfico en un objeto usando el método Chart.chart\data.chart\data\workbook().
- Borre todas las series y categorías predeterminadas de los datos del gráfico utilizando los métodos Chart.chart\data.series.clear() y Chart.chart\data.categories.clear() respectivamente.
- Añadir nuevas series y categorías.
- Acceda a cada serie de gráficos en un objeto y agréguele puntos de datos.
- Agregue color de relleno para series de gráficos y establezca etiquetas.
- Finalmente, guarde la presentación usando el método Presentation.save(string, SaveFormat).
El siguiente ejemplo de código muestra cómo crear un gráfico de columnas en PowerPoint PPT en Python.
import aspose.slides as slides
import aspose.pydrawing as drawing
# Create presentation (or load existing one)
with slides.Presentation() as pres:
# Access first slide
sld = pres.slides[0]
# Add chart with default data
chart = sld.shapes.add_chart(slides.charts.ChartType.CLUSTERED_COLUMN, 0, 0, 500, 500)
# Set chart title
chart.chart_title.add_text_frame_for_overriding("Sample Title")
chart.chart_title.text_frame_for_overriding.text_frame_format.center_text = 1
chart.chart_title.height = 20
chart.has_title = True
# Set first series to show values
chart.chart_data.series[0].labels.default_data_label_format.show_value = True
# Set the index of chart data sheet
defaultWorksheetIndex = 0
# Get the chart data worksheet
fact = chart.chart_data.chart_data_workbook
# Delete default generated series and categories
chart.chart_data.series.clear()
chart.chart_data.categories.clear()
s = len(chart.chart_data.series)
s = len(chart.chart_data.categories)
# Add new series
chart.chart_data.series.add(fact.get_cell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.type)
chart.chart_data.series.add(fact.get_cell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.type)
# Add new categories
chart.chart_data.categories.add(fact.get_cell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"))
chart.chart_data.categories.add(fact.get_cell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"))
chart.chart_data.categories.add(fact.get_cell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"))
# Take first chart series
series = chart.chart_data.series[0]
# Populate series data
series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 1, 1, 20))
series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 2, 1, 50))
series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 3, 1, 30))
# Set fill color for series
series.format.fill.fill_type = slides.FillType.SOLID
series.format.fill.solid_fill_color.color = drawing.Color.blue
# Take second chart series
series = chart.chart_data.series[1]
# Populate series data
series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 1, 2, 30))
series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 2, 2, 10))
series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 3, 2, 60))
# Set fill color for series
series.format.fill.fill_type = slides.FillType.SOLID
series.format.fill.solid_fill_color.color = drawing.Color.orange
# First label will show category name
lbl = series.data_points[0].label
lbl.data_label_format.show_category_name = True
lbl = series.data_points[1].label
lbl.data_label_format.show_series_name = True
# Show value for third label
lbl = series.data_points[2].label
lbl.data_label_format.show_value = True
lbl.data_label_format.show_series_name = True
lbl.data_label_format.separator = "/"
# Save presentation
pres.save("column-chart.pptx", slides.export.SaveFormat.PPTX)
La siguiente es la captura de pantalla del gráfico de columnas resultante.

Crear gráfico de dispersión en PowerPoint PPT en Python
Los siguientes son los pasos para crear un gráfico de dispersión en el PPT de PowerPoint en Python.
- Primero, crea una instancia de la clase Presentation.
- Obtenga la referencia de la diapositiva de Presentations.slides en un objeto.
- Agregue un gráfico de dispersión con datos predeterminados utilizando el método Slide.shapes.add\chart().
- Acceda al Workbook de datos del gráfico en un objeto usando el método Chart.chart\data.chart\data\workbook().
- Agregue nuevas series a los datos del gráfico.
- Acceda a cada serie en un objeto y agregue puntos de datos a la serie.
- Establecer el marcador para la serie.
- Finalmente, guarde la presentación usando el método Presentation.save(string, SaveFormat).
El siguiente ejemplo de código muestra cómo crear un gráfico de dispersión en PowerPoint PPTX en Python.
import aspose.slides as slides
import aspose.pydrawing as drawing
# Create presentation (or load existing one)
with slides.Presentation() as pres:
# Access first slide
slide = pres.slides[0]
# Create the default chart
chart = slide.shapes.add_chart(slides.charts.ChartType.SCATTER_WITH_SMOOTH_LINES, 0, 0, 400, 400)
# Get the default chart data worksheet index
defaultWorksheetIndex = 0
# Get the chart data worksheet
fact = chart.chart_data.chart_data_workbook
# Delete demo series
chart.chart_data.series.clear()
# Add new series
chart.chart_data.series.add(fact.get_cell(defaultWorksheetIndex, 1, 1, "Series 1"), chart.type)
chart.chart_data.series.add(fact.get_cell(defaultWorksheetIndex, 1, 3, "Series 2"), chart.type)
# Take first chart series
series = chart.chart_data.series[0]
# Add new point (1:3)
series.data_points.add_data_point_for_scatter_series(fact.get_cell(defaultWorksheetIndex, 2, 1, 1), fact.get_cell(defaultWorksheetIndex, 2, 2, 3))
# Add new point (2:10)
series.data_points.add_data_point_for_scatter_series(fact.get_cell(defaultWorksheetIndex, 3, 1, 2), fact.get_cell(defaultWorksheetIndex, 3, 2, 10))
# Edit the type of series
series.type = slides.charts.ChartType.SCATTER_WITH_STRAIGHT_LINES_AND_MARKERS
# Change the chart series marker
series.marker.size = 10
series.marker.symbol = slides.charts.MarkerStyleType.STAR
# Take second chart series
series = chart.chart_data.series[1]
# Add new point (5:2)
series.data_points.add_data_point_for_scatter_series(fact.get_cell(defaultWorksheetIndex, 2, 3, 5), fact.get_cell(defaultWorksheetIndex, 2, 4, 2))
# Add new point (3:1)
series.data_points.add_data_point_for_scatter_series(fact.get_cell(defaultWorksheetIndex, 3, 3, 3), fact.get_cell(defaultWorksheetIndex, 3, 4, 1))
# Add new point (2:2)
series.data_points.add_data_point_for_scatter_series(fact.get_cell(defaultWorksheetIndex, 4, 3, 2), fact.get_cell(defaultWorksheetIndex, 4, 4, 2))
# Add new point (5:1)
series.data_points.add_data_point_for_scatter_series(fact.get_cell(defaultWorksheetIndex, 5, 3, 5), fact.get_cell(defaultWorksheetIndex, 5, 4, 1))
# Change the chart series marker
series.marker.size = 10
series.marker.symbol = slides.charts.MarkerStyleType.CIRCLE
# Save presentation
pres.save("scatter-chart.pptx", slides.export.SaveFormat.PPTX)
La siguiente captura de pantalla muestra el gráfico de dispersión resultante.

Crear gráfico circular en PowerPoint PPT en Python
Los siguientes son los pasos para crear un gráfico circular en un PPT de PowerPoint en Python.
- Primero, crea una instancia de la clase Presentation.
- Obtenga la referencia de la diapositiva de Presentations.slides en un objeto.
- Agregue un gráfico circular con datos predeterminados usando el método Slide.shapes.add\chart().
- Establezca el título del gráfico y otras propiedades, como el formato de texto.
- Establecer la visibilidad de los valores.
- Borre todas las series y categorías predeterminadas de los datos del gráfico utilizando los métodos Chart.chart\data.series.clear() y Chart.chart\data.categories.clear() respectivamente.
- Acceda al Workbook de datos del gráfico en un objeto usando el método Chart.chart\data.chart\data\workbook().
- Agregue nuevas categorías a los datos del gráfico.
- Agregue nuevas series a los datos del gráfico.
- Acceda a cada serie en un objeto y agregue puntos de datos a la serie.
- Acceda a cada punto de datos y establezca su formato.
- Aplique formato a las etiquetas de datos en los puntos de datos.
- Establecer líneas guía y ángulos de rotación.
- Finalmente, guarde la presentación usando el método Presentation.save(string, SaveFormat).
El siguiente ejemplo de código muestra cómo crear un gráfico circular en PowerPoint PPTX en Python.
import aspose.slides as slides
import aspose.pydrawing as drawing
# Create presentation (or load existing one)
with slides.Presentation() as presentation:
# Access first slide
slide = presentation.slides[0]
# Add chart with default data
chart = slide.shapes.add_chart(slides.charts.ChartType.PIE, 100, 100, 400, 400)
# Set chart title
chart.chart_title.add_text_frame_for_overriding("Sample Title")
chart.chart_title.text_frame_for_overriding.text_frame_format.center_text = 1
chart.chart_title.height = 20
chart.has_title = True
# Set first series to show values
chart.chart_data.series[0].labels.default_data_label_format.show_value = True
# Set the index of chart data sheet
defaultWorksheetIndex = 0
# Get the chart data worksheet
fact = chart.chart_data.chart_data_workbook
# Delete default generated series and categories
chart.chart_data.series.clear()
chart.chart_data.categories.clear()
# Add new categories
chart.chart_data.categories.add(fact.get_cell(0, 1, 0, "First Qtr"))
chart.chart_data.categories.add(fact.get_cell(0, 2, 0, "2nd Qtr"))
chart.chart_data.categories.add(fact.get_cell(0, 3, 0, "3rd Qtr"))
# Add new series
series = chart.chart_data.series.add(fact.get_cell(0, 0, 1, "Series 1"), chart.type)
# Populate series data
series.data_points.add_data_point_for_pie_series(fact.get_cell(defaultWorksheetIndex, 1, 1, 20))
series.data_points.add_data_point_for_pie_series(fact.get_cell(defaultWorksheetIndex, 2, 1, 50))
series.data_points.add_data_point_for_pie_series(fact.get_cell(defaultWorksheetIndex, 3, 1, 30))
# Add new points and set sector color
chart.chart_data.series_groups[0].is_color_varied = True
point = series.data_points[0]
point.format.fill.fill_type = slides.FillType.SOLID
point.format.fill.solid_fill_color.color = drawing.Color.orange
# Set sector border
point.format.line.fill_format.fill_type = slides.FillType.SOLID
point.format.line.fill_format.solid_fill_color.color = drawing.Color.gray
point.format.line.width = 3.0
# point.format.line.style = slides.LineStyle.THIN_THICK
# point.format.line.dash_style = slides.LineDashStyle.DASH_DOT
point1 = series.data_points[1]
point1.format.fill.fill_type = slides.FillType.SOLID
point1.format.fill.solid_fill_color.color = drawing.Color.blue_violet
# Set sector border
point1.format.line.fill_format.fill_type = slides.FillType.SOLID
point1.format.line.fill_format.solid_fill_color.color = drawing.Color.blue
point1.format.line.width = 3.0
# point1.format.line.style = slides.LineStyle.SINGLE
# point1.format.line.dash_style = slides.LineDashStyle.LARGE_DASH_DOT
point2 = series.data_points[2]
point2.format.fill.fill_type = slides.FillType.SOLID
point2.format.fill.solid_fill_color.color = drawing.Color.yellow_green
# Set sector border
point2.format.line.fill_format.fill_type = slides.FillType.SOLID
point2.format.line.fill_format.solid_fill_color.color = drawing.Color.red
point2.format.line.width = 2.0
# point2.format.line.style = slides.LineStyle.THIN_THIN
# point2.format.line.dash_style = slides.LineDashStyle.LARGE_DASH_DOT_DOT
# Create custom labels for each of categories for new series
lbl1 = series.data_points[0].label
# lbl.show_category_name = True
lbl1.data_label_format.show_value = True
lbl2 = series.data_points[1].label
lbl2.data_label_format.show_value = True
lbl2.data_label_format.show_legend_key = True
lbl2.data_label_format.show_percentage = True
lbl3 = series.data_points[2].label
lbl3.data_label_format.show_series_name = True
lbl3.data_label_format.show_percentage = True
# Show leader lines for chart
# series.labels.default_data_label_format.show_leader_lines = True
# Set rotation angle for pie chart sectors
chart.chart_data.series_groups[0].first_slice_angle = 180
# Save presentation
presentation.save("pie-chart.pptx", slides.export.SaveFormat.PPTX)
La siguiente es la captura de pantalla del gráfico circular generado.

Agregar gráfico de histograma en PowerPoint PPTX en Python
Los siguientes son los pasos para crear un gráfico de histograma en PowerPoint PPT usando Aspose.Slides for Python.
- Primero, crea una instancia de la clase Presentation.
- Obtenga la referencia de la diapositiva de Presentations.slides en un objeto.
- Agregue un gráfico de histograma con datos predeterminados usando el método Slide.shapes.add\chart().
- Borre las series y categorías predeterminadas.
- Acceda al Workbook de datos del gráfico en un objeto usando el método Chart.chart\data.chart\data\workbook().
- Agregue nuevas series a los datos del gráfico.
- Acceda a cada serie en un objeto y agregue puntos de datos a la serie.
- Establezca el tipo de agregación del eje del gráfico.
- Finalmente, guarde la presentación usando el método Presentation.save(string, SaveFormat).
El siguiente ejemplo de código muestra cómo crear un gráfico de histograma en PPTX en Python.
import aspose.slides as slides
import aspose.pydrawing as drawing
# Create presentation (or load existing one)
with slides.Presentation() as pres:
# Add chart
chart = pres.slides[0].shapes.add_chart(slides.charts.ChartType.HISTOGRAM, 50, 50, 500, 400)
# Clear default categories and series
chart.chart_data.categories.clear()
chart.chart_data.series.clear()
# Access workbook
wb = chart.chart_data.chart_data_workbook
wb.clear(0)
# Add data points to series
series = chart.chart_data.series.add(slides.charts.ChartType.HISTOGRAM)
series.data_points.add_data_point_for_histogram_series(wb.get_cell(0, "A1", 15))
series.data_points.add_data_point_for_histogram_series(wb.get_cell(0, "A2", -41))
series.data_points.add_data_point_for_histogram_series(wb.get_cell(0, "A3", 16))
series.data_points.add_data_point_for_histogram_series(wb.get_cell(0, "A4", 10))
series.data_points.add_data_point_for_histogram_series(wb.get_cell(0, "A5", -23))
series.data_points.add_data_point_for_histogram_series(wb.get_cell(0, "A6", 16))
# Set aggregation type
chart.axes.horizontal_axis.aggregation_type = slides.charts.AxisAggregationType.AUTOMATIC
# Save presentation
pres.save("histogram-chart.pptx", slides.export.SaveFormat.PPTX)
La siguiente es la captura de pantalla del gráfico de histograma creado.

Crear un gráfico de acciones en PowerPoint usando Python
Los gráficos de acciones también se encuentran entre los tipos de gráficos más utilizados en las presentaciones de PowerPoint. Los siguientes son los pasos para crear un gráfico de cotizaciones en un PPT en Python.
- Primero, crea una instancia de la clase Presentation.
- Obtenga la referencia de la diapositiva de Presentations.slides en un objeto.
- Agregue un gráfico Abierto Alto Bajo Cierre con datos predeterminados usando el método Slide.shapes.add\chart().
- Borre las series y categorías predeterminadas.
- Acceda al Workbook de datos del gráfico en un objeto usando el método Chart.chart\data.chart\data\workbook().
- Agregue nuevas series y categorías al gráfico.
- Acceda a cada serie de gráficos y agregue puntos de datos.
- Especifique el formato de Líneas altas y bajas.
- Finalmente, guarde la presentación usando el método Presentation.save(string, SaveFormat).
El siguiente ejemplo de código muestra cómo agregar un gráfico de cotizaciones a PowerPoint PPTX en Python.
import aspose.slides as slides
import aspose.pydrawing as drawing
# Create presentation (or load existing one)
with slides.Presentation() as pres:
# Add chart
chart = pres.slides[0].shapes.add_chart(slides.charts.ChartType.OPEN_HIGH_LOW_CLOSE, 50, 50, 600, 400, False)
# Clear default series and categories
chart.chart_data.series.clear()
chart.chart_data.categories.clear()
# Access workbook
wb = chart.chart_data.chart_data_workbook
# Add categories
chart.chart_data.categories.add(wb.get_cell(0, 1, 0, "A"))
chart.chart_data.categories.add(wb.get_cell(0, 2, 0, "B"))
chart.chart_data.categories.add(wb.get_cell(0, 3, 0, "C"))
# Add series
chart.chart_data.series.add(wb.get_cell(0, 0, 1, "Open"), chart.type)
chart.chart_data.series.add(wb.get_cell(0, 0, 2, "High"), chart.type)
chart.chart_data.series.add(wb.get_cell(0, 0, 3, "Low"), chart.type)
chart.chart_data.series.add(wb.get_cell(0, 0, 4, "Close"), chart.type)
# Add data points
series = chart.chart_data.series[0]
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 1, 1, 72))
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 2, 1, 25))
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 3, 1, 38))
series = chart.chart_data.series[1]
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 1, 2, 172))
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 2, 2, 57))
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 3, 2, 57))
series = chart.chart_data.series[2]
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 1, 3, 12))
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 2, 3, 12))
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 3, 3, 13))
series = chart.chart_data.series[3]
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 1, 4, 25))
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 2, 4, 38))
series.data_points.add_data_point_for_stock_series(wb.get_cell(0, 3, 4, 50))
chart.chart_data.series_groups[0].up_down_bars.has_up_down_bars = True
chart.chart_data.series_groups[0].hi_low_lines_format.line.fill_format.fill_type = slides.FillType.SOLID
# Set series fill formatting
for ser in chart.chart_data.series:
ser.format.line.fill_format.fill_type = slides.FillType.NO_FILL
# Save presentation
pres.save("stock-chart.pptx", slides.export.SaveFormat.PPTX)
La siguiente es la captura de pantalla del gráfico de acciones creado.

Más sobre Gráficos
Hay muchos otros gráficos que puede agregar a las presentaciones de PowerPoint usando Aspose.Slides for Python. Para obtener más información sobre los tipos de gráficos admitidos, puede visitar este artículo de documentación.
Obtenga una licencia gratis
Puede obtener una licencia temporal gratuita para probar la biblioteca sin limitaciones de evaluación.
Conclusión
En este artículo, ha aprendido a crear gráficos en PowerPoint PPT o PPTX en Python. Hemos repasado los pasos y ejemplos de código de cómo agregar gráficos de columnas, gráficos de dispersión, gráficos circulares, histogramas y gráficos de cotizaciones. Puede explorar más sobre Aspose.Slides for Python usando documentación. En caso de que tenga alguna pregunta o consulta, háganoslo saber a través de nuestro foro.