Управление позицией, размером и оформлением диаграммы

Позиция и размер диаграммы

Иногда нужно изменить позицию или размер нового или существующего графика внутри листа. Aspose.Cells для Python via .NET предоставляет свойство Chart.chart_object для достижения этой цели. Используйте его под-свойства для изменения размера графика с новыми высотой и шириной или его позиционирования с новыми координатами X и Y.

Управление позицией и размером диаграммы

Чтобы изменить позицию диаграммы (координаты X, Y) или размер (высота, ширина), используйте эти свойства:

  1. Chart.chart_object.x
  2. Chart.chart_object.y
  3. Chart.chart_object.height
  4. Chart.chart_object.width

Следующий пример иллюстрирует использование вышеуказанных API: он загружает существующую рабочую книгу с графиком на первом листе, затем меняет размер и позицию графика, используя Aspose.Cells для Python via .NET.

from aspose.cells import Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
workbook = Workbook(dataDir + "chart.xls")
worksheet = workbook.worksheets[1]
# Load the chart from source worksheet
chart = worksheet.charts[0]
# Resize the chart
chart.chart_object.width = 400
chart.chart_object.height = 300
# Reposition the chart
chart.chart_object.x = 250
chart.chart_object.y = 150
# Output the file
workbook.save(dataDir + "chart.out.xls")

Манипулирование дизайнерскими диаграммами

Иногда необходимо управлять или изменять графики в файлах шаблонов дизайнера. Aspose.Cells для Python via .NET полностью поддерживает управление содержимым и элементами дизайнерских графиков, при этом данные, содержимое графика, фоновое изображение и форматирование сохраняются точно.

Манипулирование дизайнерскими диаграммами в файле-шаблоне

Для манипулирования дизайнерскими диаграммами в файлах-шаблонах используйте связанный с диаграммой API. Например, вы можете использовать свойство Worksheet.Charts для получения коллекции существующих диаграмм в файле-шаблоне.

Создание диаграммы

В следующем примере показано, как создать пирамидальную диаграмму. Позже мы будем изменять эту диаграмму.

from aspose.cells import Workbook
from aspose.cells.charts import ChartType
from os import os, path
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Create directory if it is not already present.
IsExists = path.isdir(dataDir)
if notIsExists:
os.makedirs(dataDir)
# Instantiating a Workbook object
workbook = Workbook()
# Adding a new worksheet to the Excel object
sheetIndex = workbook.worksheets.add()
# Obtaining the reference of the newly added worksheet by passing its sheet index
worksheet = workbook.worksheets[sheetIndex]
# Adding sample values to cells
worksheet.cells.get("A1").put_value(50)
worksheet.cells.get("A2").put_value(100)
worksheet.cells.get("A3").put_value(150)
worksheet.cells.get("B1").put_value(4)
worksheet.cells.get("B2").put_value(20)
worksheet.cells.get("B3").put_value(50)
# Adding a chart to the worksheet
chartIndex = worksheet.charts.add(ChartType.PYRAMID, 5, 0, 15, 5)
# Accessing the instance of the newly added chart
chart = worksheet.charts[chartIndex]
# Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3"
chart.n_series.add("A1:B3", True)
# Saving the Excel file
workbook.save(dataDir + "book1.out.xls")

Изменение диаграммы

В следующем примере показано, как изменить существующую диаграмму. В этом примере мы модифицируем созданную выше диаграмму. В полученном выводе обратите внимание, что метка даты одной точки данных установлена на ‘Великобритания, 30K’.

from aspose.cells import Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Open the existing file.
workbook = Workbook(dataDir + "piechart.xls")
# Get the designer chart in the second sheet.
sheet = workbook.worksheets[1]
chart = sheet.charts[0]
# Get the data labels in the data series of the third data point.
datalabels = chart.n_series[0].points[2].data_labels
# Change the text of the label.
datalabels.text = "Unided Kingdom, 400K "
# Save the excel file.
workbook.save(dataDir + "output.xls")

Изменение линейной диаграммы в шаблоне конструктора

В этом примере мы будем изменять линейную диаграмму. Мы добавим несколько рядов данных к существующей диаграмме и изменим цвета их линий.

from aspose.cells import Workbook
from aspose.pydrawing import Color
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Open the existing file.
workbook = Workbook(dataDir + "Book1.xlsx")
# Get the designer chart in the first worksheet.
chart = workbook.worksheets[0].charts[0]
# Add the third data series to it.
chart.n_series.add("{60, 80, 10}", True)
# Add another data series (fourth) to it.
chart.n_series.add("{0.3, 0.7, 1.2}", True)
# Plot the fourth data series on the second axis.
chart.n_series[3].plot_on_second_axis = True
# Change the Border color of the second data series.
chart.n_series[1].border.color = Color.green
# Change the Border color of the third data series.
chart.n_series[2].border.color = Color.red
# Make the second value axis visible.
chart.second_value_axis.is_visible = True
# Save the excel file.
workbook.save(dataDir + "output.xls")