Описание метода
Для изменения графика используется метод graph_modify:
graph_modify(g_type: Union[int, str] = 1, settings: str = str(), grid: int = 3, labels: Dict = None,
other: Dict = None, graph_id: str = "", m_size: Dict = None) -> str:
В методе используются следующие аргументы:
| Аргумент | Описание |
|---|---|
| g_type: (Union[int, str]) | Тип графика; можно задавать как целочисленное значение, так и строковое. Возможные значения: [1, "lines"] — «Линии»; |
| settings: (str) | Битмап-строка настроек графиков; значениями могут быть только 0 или 1. Каждый тип графика имеет свой битмап настроек: |
| grid: (int) | Настройки сетки. Типы графиков, не имеющие данной настройки: [6, "pies"], [7, "radar"], [10, "balls"], [12, "3d_pools"], [14, "surface"], [15, "graph"], [16, "sankey"], [17, "chord"]. Все остальные типы графиков имеют одно из следующих значений: |
| labels: (Dict) | Настройки подписей на графиках. Типы графиков, не имеющие данной настройки: [6, "pies"], [7, "radar"], [14, "surface"], [15, "graph"], [16, "sankey"], [17, "chord"]. Структура словаря зависит от типа графика (описано ниже). |
| other: (Dict) | Дополнительные настройки графиков. Типы графиков, не имеющие данной настройки: [4, "areas"], [7, "radar"], [16, "sankey"]. Структура словаря зависит от типа графика (описано ниже). |
| graph_id: (str) | Идентификатор изменяемого модуля графики. Если параметр не задан, то будет изменен текущий активный график. Если и текущий активный график не задан, то будет сгенерирована ошибка. |
| m_size: (dict) | Размеры окна графики; актуально для любого типа графиков. Структура словаря описана ниже. |
Словарь labels имеет разную структуру, в зависимости от типа графика.
Для типов графиков [1, "lines"], [2, "cylinders"], [3, "cumulative_cylinders"], [4, "areas"], [5, "cumulative_areas"], [8, "circles"], [11, "pools"], [13, "corridors"], [18, "point"] словарь labels имеет вид:
{"OX": <value>, "OY": <value>, "division_value": <value>}
| Ключ | Описание |
|---|---|
| OX: (int) | Частота подписей по оси OX; от 5 до 30 с шагом 5, по умолчанию 10. |
| OY: (int) | Частота подписей по оси OY; от 5 до 30 с шагом 5, по умолчанию 10. |
| division_value: (str) | Цена деления. Возможны варианты: "no", "hundreds", "thousands", "millions", "billions", "trillions"; значение по умолчанию — "no". |
Для типов графиков [10, "balls"], [12, "3d_pools"] словарь labels имеет вид:
{"OX": <value>, "OY": <value>, "OZ": <value>}
| Ключ | Описание |
|---|---|
| OX: (int) | Частота подписей по оси OX; от 1 до 10 с шагом 0,5, по умолчанию 2,5. |
| OY: (int) | Частота подписей по оси OY; от 1 до 10 с шагом 0,5, по умолчанию 2,5. |
| OZ: (int) | Частота подписей по оси OZ; от 1 до 10 с шагом 0,5, по умолчанию 2,5. |
Словарь other имеет разную структуру, в зависимости от типа графика.
Для типов графиков [1, "lines"], [13, "corridors"] словарь other имеет вид:
{"hints": <value>, "show_points": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| hints: (bool) | Отображение подсказок к точкам. True — отображать, False — не отображать; по умолчанию False. |
| show_points: (bool) | Отображение точек. True — отображать, False — не отображать; по умолчанию True. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [2, "cylinders"] словарь other имеет вид:
{"hints": <value>, "round": <value>, "ident": <value>, "ident_value": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| hints: (bool) | Отображение подсказок к цилиндрам. True — отображать, False — не отображать; по умолчанию False. |
| round: (bool) | Округление значений в подсказках до целых чисел. True — не округлять, False — округлять; по умолчанию False. Актуально при hints=True. |
| ident: (bool) | Отображение цилиндров с отступом. True — отображать с отступом, False — отображать без отступа; по умолчанию True. |
| ident_value: (int) | Значение отступа; от 0 до 1 с шагом 0,05, по умолчанию 0,9. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [3, "cumulative_cylinders"] словарь other имеет вид:
{"hints": <value>, "round": <value>, "graph_type": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| hints: (bool) | Отображение подсказок к цилиндрам. True — отображать, False — не отображать; по умолчанию False. |
| round: (bool) | Округление значений в подсказках до целых чисел. True — не округлять, False — округлять; по умолчанию False. Актуально при hints=True. |
| graph_type: (str) | Вид графика. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [5, "cumulative_areas"] словарь other имеет вид:
{"graph_type": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| graph_type: (str) | Вид графика. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [6, "pies"] словарь other имеет вид:
{
"show_sector_values": <value>,
"min_sector": <value>,
"restrict_signature": <value>,
"size_of_signatures": <value>,
"name": <value>
}
| Ключ | Описание |
|---|---|
| show_sector_values: (bool) | Отображение значений на секторах. True — отображать значения на секторах, False — не отображать значения на секторах; по умолчанию False. |
| min_sector: (int) | Минимальный сектор; от 0 до 100 с шагом 1, по умолчанию 0. Позволяет настроить размер для сектора «Прочее», в который объединяются элементы с наименьшими значениями первого (первого отмеченного) факта, сумма которых не превышает установленного на шкале значения в %, а также еще один элемент, имеющий следующее по возрастанию значение факта. |
| restrict_signature: (int) | Ограничение числа подписей; от 0 до 100 с шагом 1, по умолчанию 10. |
| size_of_signatures: (int) | Размер подписей; от 7 до 15 с шагом 1, по умолчанию 12. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [8, "circles"] словарь other имеет вид:
{"diameter_range": <value>, "diameter": <value>, "show_trend_line": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| diameter_range: (tuple[int, int]) | Диапазон диаметров. Записывается в виде кортежа (min, max), где min — нижняя граница, а max — верхняя; обе границы должны быть в диапазоне от 1 до 50 с шагом 1; верхняя граница не может быть меньше нижней; по умолчанию (3, 15). |
| diameter: (int) | Диаметр кругов; от 1 до 50 с шагом 1, по умолчанию 10. |
| show_trend_line: (bool) | Отображение линии тренда. True — отображать линию тренда, False — не отображать линию тренда; по умолчанию False. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [11, "pools"] словарь other имеет вид:
{"diameter_range": <value>, "diameter": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| diameter_range: (tuple[int, int]) | Диапазон диаметров. Записывается в виде кортежа (min, max), где min — нижняя граница, а max — верхняя; обе границы должны быть в диапазоне от 1 до 50 с шагом 1; верхняя граница не может быть меньше нижней; по умолчанию (3, 15). |
| diameter: (int) | Диаметр кругов; от 1 до 50 с шагом 1, по умолчанию 10. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [10, "balls"] словарь other имеет вид:
{"show_shadows": <value>, "diameter_range": <value>, "diameter": <value>, "colors": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| show_shadows: (bool) | Отображение теней. True — отображать тени, False — не отображать тени; по умолчанию True. |
| diameter_range: (tuple[int, int]) | Диапазон диаметров. Записывается в виде кортежа (min, max), где min — нижняя граница, а max — верхняя; обе границы должны быть в диапазоне от 4 до 48 с шагом 1; верхняя граница не может быть меньше нижней; по умолчанию (4, 48). |
| diameter: (int) | Диаметр кругов; от 4 до 48 с шагом 1, по умолчанию 4. |
| colors: ([str]) | Градиент шаров; ожидается список из двух цветов в формате "#RRGGBB"; по умолчанию ["#ffff00", "#3c9bea"]. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [12, "3d_pools"] словарь other имеет вид:
{"diameter_range": <value>, "diameter": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| diameter_range: (tuple[int, int]) | Диапазон диаметров. Записывается в виде кортежа (min, max), где min — нижняя граница, а max — верхняя; обе границы должны быть в диапазоне от 4 до 48 с шагом 1; верхняя граница не может быть меньше нижней; по умолчанию (4, 48). |
| diameter: (int) | Диаметр кругов; от 4 до 48 с шагом 1, по умолчанию 4. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [14, "surface"] словарь other имеет вид:
{"show_carcass": <value>, "opacity": <value>, "colors": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| show_carcass: (bool) | Отображение каркаса. True — отображать каркас, False — не отображать каркас; по умолчанию False. |
| opacity: (int) | Прозрачность; от 0 до 100 с шагом 1, по умолчанию 100. |
| colors: ([str]) | Цвета поверхности; ожидается список из трех цветов в формате "#RRGGBB"; по умолчанию ["#eaf7fb", "#3c9bea", "#08034f"]. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [15, "graph"] словарь other имеет вид:
{
"node_settings": <value>,
"edge_settings": <value>,
"neighboring_nodes_count": <value>,
"min_thickness_on_hover": <value>,
"opacity_of_unselected": <value>,
"name": <value>
}
| Ключ | Описание |
|---|---|
| node_settings: (dict) | Настройки узлов. Структура словаря описана ниже. |
| edge_settings: (dict) | Настройки ребер. Структура словаря описана ниже. |
| neighboring_nodes_count: (int) | Количество выделенных соседних узлов при наведении; от 0 до 5 с шагом 1, по умолчанию 3. |
| min_thickness_on_hover: (tuple[int, int]) | Диапазон минимальной толщины при наведении. Записывается в виде списка/кортежа (min, max), где min — нижняя граница, а max — верхняя; обе границы должны быть в диапазоне от 0,5 до 5 с шагом 0,1; верхняя граница не может быть меньше нижней; по умолчанию (1, 3). |
| opacity_of_unselected: (int) | Прозрачность невыделенных узлов; от 0 до 1 с шагом 0,01, по умолчанию 0,7. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Значение ключа node_settings имеет структуру:
{"colors": <value>, "min_size": <value>, "max_size": <value>}
| Ключ | Описание |
|---|---|
| colors: (dict) | Переход цвета узлов. Структура словаря описана ниже. |
| min_size: (int) | Минимальный размер узла; от 1 до 10 с шагом 0,1, по умолчанию 1. |
| max_size: (int) | Максимальный размер узла; от 5 до 15 с шагом 0,1, по умолчанию 10; должен быть больше, чем min_size. |
Значение ключа colors имеет структуру:
{"first": <value>, "second": <value>}
| Ключ | Описание |
|---|---|
| first: (str) | Цвет в формате "#RRGGBB". Значение по умолчанию "#1f77b4". |
| second: (str) | Цвет в формате "#RRGGBB". Значение по умолчанию "#17becf". Если задан только один цвет, для второго берется значение по умолчанию. Если не задан ни один цвет, берутся значения по умолчанию. |
Значение ключа edge_settings имеет структуру:
{"colors": <value>, "min_thickness": <value>, "max_thickness": <value>}
| Ключ | Описание |
|---|---|
| colors: (dict) | Переход цвета узлов. Структура словаря описана ниже. |
| min_thickness: (int) | Минимальная толщина ребра; от 1 до 5 с шагом 0,1, по умолчанию 1. |
| max_thickness: (int) | Максимальная толщина ребра; от 5 до 10 с шагом 0,1, по умолчанию 5; должна быть больше, чем min_thickness. |
Значение ключа colors имеет структуру:
{"first": <value>, "second": <value>}
| Ключ | Описание |
|---|---|
| first: (str) | Цвет в формате "#RRGGBB". Значение по умолчанию "#1f77b4". |
| second: (str) | Цвет в формате "#RRGGBB". Значение по умолчанию "#17becf". Если задан только один цвет, для второго берется значение по умолчанию. Если не задан ни один цвет, берутся значения по умолчанию. |
Для типа графика [17, "chord"] словарь other имеет вид:
{"show_title": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| show_title: (str) | Отображение подписей. True — отображать подписи, False — не отображать подписи; по умолчанию True. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Для типа графика [18, "point"] словарь other имеет вид:
{"diameter": <value>, "diameter_range": <value>, "show_trend_line": <value>, "name": <value>}
| Ключ | Описание |
|---|---|
| diameter: (int) | Диаметр кругов; от 1 до 50 с шагом 1, по умолчанию 10. |
| diameter_range: (tuple[int, int]) | Диапазон диаметров. Записывается в виде кортежа (min, max), где min — нижняя граница, а max — верхняя; обе границы должны быть в диапазоне от 1 до 50 с шагом 1; верхняя граница не может быть меньше нижней; по умолчанию (3, 15). |
| show_trend_line: (bool) | Отображение линии тренда. True — отображать линию тренда, False — не отображать линию тренда; по умолчанию True. |
| name: (str) | Название графика. Если параметр не задан, у графика останется текущее название. |
Словарь m_size имеет вид:
{"height": <value>, "width": <value>}
или
{"h": <value>, "w": <value>}
| Ключ | Описание |
|---|---|
height: (int) или h: (int) | Высота окна; минимальное значение — 240, значение по умолчанию — 540. При указании значения меньше минимального, будет сгенерирована ошибка. |
width: (int) или w: (int) | Ширина окна; минимальное значение — 840, значение по умолчанию — 840. При указании значения меньше минимального, будет сгенерирована ошибка. |
Примеры использования метода graph_create:
other={"diameter_range": (20,30), "diameter": 10, "show_trend_line": True}
labels={"OX":20, "OY":20}
session.graph_modify(g_type=8, labels=labels, grid=0, other=other)
other={"hints": True, "round": True, "ident": True, "ident_value":0.5}
labels={"OX":20, "OY":20}
m_size={"height": 300, "width": 1000}
session.graph_modify(g_type=2, labels=labels, grid=0, other=other, m_size=m_size)
other={"show_sector_values": True}
labels={"OX":20, "OY":20}
session.graph_modify(g_type=6, other=other)
other={"show_trend_line": False, "name":"Данные по закупкам"}
labels = {"OX":5, "OY":5}
session.graph_modify(g_type=18, grid=0, other=other, labels=labels)
В результате использования метода возвращается идентификатор измененного окна графики.
Пример ответа:
'cc7f667b-0c93c73f-3b2182ee-1b09c94a'