75 lines
2.5 KiB
Markdown
75 lines
2.5 KiB
Markdown
# PyQT graph plotter
|
||
|
||
## Интерфейс пакетов
|
||
|
||
- `graph_widget`
|
||
|
||
```python
|
||
graph = Graph(x, y, labels, mult_subplots=mult_plots)
|
||
#x,y-данные для графиков. x-вводится пользователем или подтягивается из бд
|
||
#y-формируется из введенного математического выражения
|
||
#labels- список наименований графиков
|
||
#mult_subplots=True/False отрисовка графиков в виде subplots или на одном plot
|
||
|
||
```
|
||
- `parser`
|
||
|
||
[parser/README.md](./parser/README.md)
|
||
|
||
- `plotter_dialog`
|
||
|
||
```python
|
||
from plotter_dialog import PlotterDialog, FUNCTION_NAMES
|
||
|
||
PlotterDialog(
|
||
variable_values: dict[str, np.ndarray] = {} # Значения для подстановки в переменные
|
||
variable_full_names: dict[str, str] = {} # Надписи для кнопок переменных и подсказок для них
|
||
function_full_names: dict[str, str] = FUNCTION_NAMES # То же самое для функций
|
||
)
|
||
|
||
FUNCTION_NAMES = {
|
||
"abs": "Модуль",
|
||
"acos": "Арккосинус",
|
||
"acosh": "Гиперболический арккосинус",
|
||
"acot": "Арккотангенс",
|
||
"asin": "Арксинус",
|
||
"asinh": "Гиперболический арксинус",
|
||
"atan": "Арктангенс",
|
||
"avg": "Среднее",
|
||
"cos": "Косинус",
|
||
"cosh": "Гиперболический косинус",
|
||
"cot": "Котангенс",
|
||
"exp": "Экспонента (e^x)",
|
||
"lg": "Десятичный логарифм",
|
||
"ln": "Натуральный логарифм",
|
||
"log2": "Двоичный логарифм",
|
||
"max": "Максимум",
|
||
"min": "Минимум",
|
||
"prod": "Произведение",
|
||
"sgn": "Знак",
|
||
"sin": "Синус",
|
||
"sinh": "Гиперболический синус",
|
||
"sqrt": "Квадратный корень",
|
||
"sum": "Сумма",
|
||
"tanh": "Гиперболический тангенс",
|
||
"tan": "Тангенс",
|
||
}
|
||
```
|
||
|
||
`variable_full_names` и `variable_values` должны иметь одни и те же ключи.
|
||
|
||
## Инструкции по запуску демо-версии
|
||
|
||
Выполнить в корневой папке:
|
||
|
||
```bash
|
||
python -m venv .venv
|
||
source .venv/bin/activate
|
||
pip install -r requirements.txt
|
||
|
||
python -m plotter_dialog
|
||
```
|
||
## Screenshot
|
||
|
||

|