Щоб позначити функціональну залежність між величинами, в математиці використовують широкий спектр понять: графік, діаграма, крива та ін. В англомовній термінології вживають Chart, Plot, Diagram тощо.

Оскільки термін “діаграма” вже використовується в TechEditor (це окремий тип документу в проєкті), то в цій статті ми будемо оперувати словами “графік” та “chart”, відповідно.

Chart Editor — редактор графіків

Перейдіть на вкладку Automation і натисніть Chart Editor.

Відкриється вікно редактора графіків. За базовими налаштунками, компонент стартує з випадковими (демонстраційними) даними; ви можете оновлювати їх, натискаючи кнопку Sample:

Редактор розділений на три частини:

  • основний тулбар (зверху)
  • панель керування графіками (праворуч)
  • координатна площина для відображення графіків (по центру)

Переміщення графіком

Якщо опція Pan (режим панорами) включена, ви можете вільно переміщатися графіком за допомогою миші, затиснувши будь-яку її кнопку.

Масштабування графіку

Щоб збільшити або зменшити масштаб графіку, скористайтеся режимом Scale X (горизонтальне масштабування) або Scale Y (вертикальне масштабування). Для зміни масштабу рухайте мишею у відповідному напрямку (вертикально чи горизонтально) з затисненою кнопкою Ctrl.

Опція No Scale скасовує режим масштабування.

Автоматична підгонка розмірів графіку

Щоб зробити графік видимим після панорамування або масштабування, скористайтеся командами:

  • Fit X — підгонка розмірів за віссю абсцис (x)
  • Fit Y — те саме, за віссю ординат (y)
  • Fit All — підгонка за обома осями (весь графік стане видимий)

Як будувати графіки в TechEditor

Графіки будуються на основі числових даних, джерелом яких може бути:

  • Функціональна залежність y(x)
  • Масиви або вектори на кшталт [0 1 2.5 6], [4.5 8 20 104]
  • CSV-файл (таблиця даних)
  • Дійсне число (створює одну точку)

На координатну площину компонента Chart Editor можна нанести кілька графіків:

Графік математичної функції

Щоб відобразити графік функції, потрібно ввести її вираз і сформувати масив аргументів.

Вираз функції записується у форматі y(x)=f(x):

Аргументом має бути масив чисел — наявний у документі вектор або вектор, що формується динамічно (в самому редакторі). Цей масив чисел має відповідати синтаксичним правилам рушія MathSIV, наприклад:

  • [-1 0 1 2 3 4 5] — статичний вектор з 7 елементів від -1 до +5 з кроком 1;
  • Array{-5 5}(101) — динамічний вектор з 101 елемента в діапазоні від -5 до +5 з кроком 0.1, тобто x=[-5 -4.9 -4.8 … 5];
  • Vx — змінна “Vx”, яка фігурує у звіті і містить потрібні значення.

В якості аргумента функції можна використовувати не тільки класичну літеру “x”, а й будь-яку іншу:

Примітка. Якщо в поля "x" та "y" вписати дійсні числа (або змінні, які мають числові значення), то графік складатиметься з однієї точки з відповідними координатами (x; y).

Графік за даними CSV-файлу або довільної таблиці

Для завантаження даних з CSV-файлу або стовпця Excel-таблиці спочатку потрібно їх імпортувати. Для цього додайте до проєкту ресурсний документ (тип — Text or Data Table) і перетягніть на нього свій CSV-файл. У випадку електронної таблиці можна виділити потрібні стовпці та скопіювати їх до ресурсу.

Порада: якщо перший рядок таблиці містить текст (заголовки стовпців) — видаліть його.

В нашому прикладі CSV складається з 5 стовпців: перший стовпець характеризує час, а чотири інші — відповідні осцилограми. Імпортуємо ці стовпці в окремі масиви “X”, “Y1”, “Y2”, “Y3”, “Y4”. Для цього послідовно додамо до звіту п’ять об’єктів CSV Object (вкладка Automation):

Chart Editor | Dystlab TechEditor

Ключовими параметрами в CSV Object є Resource Document (ваша таблиця), Variable Name (ім’я змінної) та Column (номер стовпця, з якого беруться дані). Інші параметри є опціональними. Якщо в полі Value позначити ім’я змінної, то на екран буде виведено її значення (увесь масив даних).

Примітка. Щоб вивести частину значень вектору, скористайтеся функцією Range{a b}(V). Приклад: X=[0 2 4 6 8]; Range{0 1}(X)=[0 2]

Коли усі змінні додані до звіту, з ними можна працювати як зі звичайними матрицями — обертати, множити, транспонувати, тощо. Зокрема, будувати графіки.

Побудуємо перші дві осцилограми з нашого прикладу. Для цього в якості аргументу вкажемо "X", а в поле ординат запишемо "Y1" і "Y2", відповідно:

Chart Editor | Dystlab TechEditor

Натиснемо в редакторі Save & Close І переконаємось, що графіки додано до звіту:

Chart Editor | Dystlab TechEditor

Імпорт даних напряму з CSV-файлу

Ми розглянули приклад, коли дані спочатку імпортуються у проміжний ресурсний документ проєкту, а вже потім використовуються у розрахунках. Цей підхід корисний тим, що всі дані зберігаються в проєкті і до них завжди можна звернутися (наприклад, з інших звітів). Плюс, це швидко, адже усі дані розміщуються в пам’яті.

Але об’єкт автоматизації CSV Object дозволяє також імпортувати дані напряму з файлу, без створення ресурсу. Для цього достатньо ввести ім’я файлу у відповідне поле (я раджу скористатися кнопкою Browse для зручності).

В залежності від об’єму даних, цей підхід може характеризуватися затримками. Якщо це станеться, раджу відключити автоматичне обчислення документу і перейти в режим ручного оновлення розрахунків (клавиша F5).

Chart Editor | Dystlab TechEditor

Налаштування графіків

Як додати, змінити, видалити графік

Щоб додати графік до загальної площини, натисніть Add. Графік з’явиться у переліку “Series”.

Кнопка Modify вносить зміни у виділений графік.

Кнопка Delete видаляє обрані графіки, а Clear — всі дані.

Chart Editor | Dystlab TechEditor

Що відбудеться з графіком, якщо змінити його розмір у звіті?

У звіті ви можете працювати з графіком, як зі звичайним зображенням — переміщувати, копіювати і, звісно, змінювати розміри.

Змінити розміри графіку можна довільно (курсором миші) або зазначивши точні значення у вікні властивостей. Щоб відкрити вікно властивостей, виділіть графік, відкрийте контекстне меню (права кнопка миші) і оберіть Object Properties:

Chart Editor | Dystlab TechEditor

Коли розміри графіку змінюються, то у звіті він може виглядати не так, як у редакторі. Програма автоматично адаптує координатну площину під нові розміри і перерисовує усі графіки на цій зміненій площині так, щоб вони виглядали максимально чітко та якісно.

Стилі ліній, сітки, осей

Для керування візуальним стилем графіків перейдіть на вкладку “Series”:

  • Колір, стиль, товщина ліній: Lines
  • Колір, тип, розмір точок: Markers
  • Колір та формат міток: Labels

Chart Editor | Dystlab TechEditor

За стиль осей та сітки відповідає вкладка “Grid & Axes”:

  • Колір, стиль, товщина ліній сітки: Lines
  • Позиція осі абсцис: внизу, по центру, вгорі: X-Axis
  • Позиція осі ординат: ліворуч, по центру, праворуч: Y-Axis
  • Заголовки осей: Title

Chart Editor | Dystlab TechEditor

Налаштування координатної площини (вкладка Chart):

  • Заголовок графіку: Title
  • Колір фону: Color
  • Видимість легенди: Show Legend
  • Колір, стиль, товщина контуру: Border
  • Відступи від графіку до краю площини в пікселях: Series margins
  • Відступи, що характеризують зону графіку, яка безпосередньо потрапить у звіт у % (див. нижче): Render area margins

Chart Editor | Dystlab TechEditor

Обмеження зони видимості графіку

За базовими налаштунками, в звіт вставляється увесь простір компоненту (координатна площина, графіки, найменуванням осей, шкали, заголовок, тощо). Але ви можете обмежити зону, яка буде відображена в звіті. Для цього перейдіть на вкладку “Chart” та скористайтеся опціями Render area margins:

Chart Editor | Dystlab TechEditor

Червоний контур тут окреслює зону, яка потрапить до звіту. Цей прямокутник є службовим елементом і не додається до звіту. Щоб вимкнути його також у редакторі, натисність кнопку Render Area.

Результат в звіті:

Chart Editor | Dystlab TechEditor

Аналіз даних на графіках

Окрім візуалізації графіків, Chart Editor дозволяє отримувати по ним значення. Доступні два інтерактивні режими:

  • Trace Continuous — довільне трасування (без прив’язки до графіків)
  • Trace Values — точне трасування (враховуються тільки наявні точки)

Демонстрація режиму Trace Continuous:

Chart Editor | Dystlab TechEditor

Демонстрація режиму Trace Values:

Chart Editor | Dystlab TechEditor

Опція No Tracing скасовує режим трасування.