Как создать динамическую прокручивающуюся диаграмму
Возможные сценарии использования
Динамическая прокручивающаяся диаграмма - это тип графического представления, используемого для отображения данных, меняющихся со временем. Она предназначена для предоставления видео в реальном времени данных, позволяя пользователям отслеживать непрерывные обновления и тренды. Диаграмма непрерывно обновляется при добавлении новых данных, автоматически прокручиваясь, чтобы показывать самую последнюю информацию.
Динамические прокручивающиеся диаграммы широко используются в различных отраслях, таких как финансы, анализ фондового рынка, отслеживание погоды и аналитика социальных медиа. Они позволяют пользователям визуализировать и анализировать паттерны данных и принимать обоснованные решения на основе информации в реальном времени.
Эти диаграммы обычно интерактивны, позволяя пользователю увеличивать или уменьшать масштаб, прокручивать исторические данные и регулировать временные интервалы. Они часто поддерживают несколько серий данных, обеспечивая комплексный обзор различных метрик и их взаимосвязей.
В целом, динамические прокручивающиеся диаграммы - это ценные инструменты для мониторинга и анализа временных рядов данных, способствуя принятию решений в реальном времени и улучшая возможности визуализации данных.
Используйте Aspose.Cells для Python via .NET для создания динамической прокручивающейся диаграммы
В следующих параграфах мы покажем вам, как создать динамическую прокручивающуюся диаграмму с помощью Aspose.Cells для Python via .NET. Мы представим пример кода и созданный с его помощью файл Excel.
Образец кода
Приведенный ниже образец кода сгенерирует файл Динамической Прокручивающейся Диаграммы.
from aspose.cells import Workbook | |
from aspose.cells.charts import ChartType | |
# How to Create a Dynamic Scrolling Chart | |
# Your local test path | |
LocalPath = r"" | |
# Create a new workbook and access the first worksheet. | |
workbook = Workbook() | |
sheets = workbook.worksheets | |
sheet = sheets[0] | |
# Populate the data for the chart. Add values to cells and set series names. | |
sheet.cells.get("A1").put_value("Day") | |
sheet.cells.get("B1").put_value("Sales") | |
# In this example, we will add 30 days of data | |
allDays = 30 | |
showDays = 10 | |
currentDay = 1 | |
for i in range(allDays): | |
_cellA = "A" + str(i + 2) | |
_cellB = "B" + str(i + 2) | |
sheet.cells.get(_cellA).put_value(i + 1) | |
value = 50 * (i % 2) + 20 * (i % 3) + 10 * (i / 3) | |
sheet.cells.get(_cellB).put_value(value) | |
# This is the Dynamic Scrolling Control Data | |
sheet.cells.get("G19").put_value("Start Day") | |
sheet.cells.get("G20").put_value(currentDay) | |
sheet.cells.get("H19").put_value("Show Days") | |
sheet.cells.get("H20").put_value(showDays) | |
# Set the dynamic range for the chart's data source. | |
index = sheets.names.add("Sheet1!ChtScrollData") | |
sheets.names[index].refers_to = "=OFFSET(Sheet1!$B$2,Sheet1!$G$20,0,Sheet1!$H$20,1)" | |
# Set the dynamic range for the chart's data labels. | |
index = sheets.names.add("Sheet1!ChtScrollLabels") | |
sheets.names[index].refers_to = "=OFFSET(Sheet1!$A$2,Sheet1!$G$20,0,Sheet1!$H$20,1)" | |
# Add a ScrollBar for the Dynamic Scrolling Chart | |
bar = sheet.shapes.add_scroll_bar(2, 0, 3, 0, 200, 30) | |
bar.min = 0 | |
bar.max = allDays - showDays | |
bar.current_value = currentDay | |
bar.linked_cell = "$G$20" | |
# Create a chart object and set its data source. | |
chartIndex = sheet.charts.add(ChartType.LINE, 2, 4, 15, 10) | |
chart = sheet.charts[chartIndex] | |
chart.n_series.add("Sales", True) | |
chart.n_series[0].values = "Sheet1!ChtScrollData" | |
chart.n_series[0].x_values = "Sheet1!ChtScrollLabels" | |
# Save the workbook as an Excel file. | |
workbook.save(LocalPath + "DynamicScrollingChart.xlsx") |
Примечания
В сгенерированном файле вы можете работать со строкой прокрутки, в то время как диаграмма динамически подсчитывает последние 10 наборов данных. Это делается с использованием формулы “СМЕЩЕНИЕ” в образцовом коде:
"=OFFSET(Sheet1!$B$2,Sheet1!$G$20,0,Sheet1!$H$20,1)"
Вы можете попробовать изменить число “10” на “15” в ячейке «Sheet1!$H$20», и динамическая диаграмма будет считать последние 15 наборов данных. Теперь мы успешно создали динамическую прокручивающуюся диаграмму с помощью Aspose.Cells для Python via .NET.