BarThematicLayer - Столбчатые диаграммы

digraph geometry {
    node [shape="box", style=filled, fillcolor="lightgray"]
    rankdir=LR
    labelloc="t";
    label="Иерархия классов:";

    ThematicLayer  [ href="ThematicLayer.html#ref-label-thematiclayer-class" ];
    BarThematicLayer  [ href="BarThematicLayer.html#ref-label-barthematiclayer-class" ];
    AllocationThematic  [ href="AllocationThematic.html#ref-label-allocationthematiclayer-class" ];
    OrientationThematic  [ href="OrientationThematic.html#ref-label-orientationthematiclayer-class" ];
    StyledByIndexThematic  [ href="StyledByIndexThematic.html#ref-label-styledbythematicthematiclayer-class" ];

    ThematicLayer -> BarThematicLayer;
    AllocationThematic -> BarThematicLayer;
    OrientationThematic -> BarThematicLayer;
    StyledByIndexThematic -> BarThematicLayer;
}
class axipy.render.BarThematicLayer

Базовые классы: ThematicLayer, AllocationThematic, OrientationThematic, StyledByIndexThematic

Тематика в виде столбчатых диаграмм.

Параметры:

expressions – Наименования атрибутов или выражений в виде списка list.

Создание тематики с последующим добавлением ее к базовому слою.
bar = BarThematicLayer(["Население", "Мужское", "Женское"])
# Добавляем к основному слою
world.thematic.add(bar)

Классовые методы:

create(dataObject)

Создает слой на базе открытой таблицы или растра.

Свойства:

allocationType

Тип распределения значений.

coordsystem

Координатная система, в которой находятся данные, отображаемые слоем.

data_object

Источник данных для слоя.

isStacked

Расположение столбчатой диаграммы в виде стопки, если True.

is_valid

Проверка на валидность объекта.

max_zoom

Максимальная ширина окна, при котором слой отображается на карте.

min_zoom

Минимальная ширина окна, при котором слой отображается на карте.

opacity

Прозрачность слоя в составе карты.

orientationType

Ориентация относительно центроида.

title

Наименование слоя.

visible

Управляет видимостью слоя.

zoom_restrict

Будет ли использоваться ограничение по отображению.

Методы:

get_bounds()

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

get_style(idx)

Стиль для указанного выражения.

set_style(idx, style)

Установка стиля оформления для выражения по его индексу в списке выражений.

Сигналы:

data_changed

Сигнал об изменении контента слоя.

need_redraw

Сигнал о необходимости перерисовать слой.

property allocationType: int

Тип распределения значений.

Допустимые значения.

Константа

Значение

Описание

LINEAR

1

Линейное (по умолчанию)

SQRT

2

Квадратичное

LOG10

3

Логарифмическое

property coordsystem: CoordSystem

Координатная система, в которой находятся данные, отображаемые слоем.

classmethod create(dataObject: DataObject) Layer

Создает слой на базе открытой таблицы или растра.

Параметры:

dataObject – Таблица или растр. В зависимости от переданного объекта будет создан VectorLayer или RasterLayer.

Пример создания слоя на базе файла.
# Векторный слой
table = provider_manager.openfile(filepath)
vector_layer = Layer.create(table)
# Подпишемся на обновление контента слоя
vector_layer.need_redraw.connect(lambda: print('Update layer'))
property data_changed: Signal

Сигнал об изменении контента слоя.

Тип результата:

Signal[]

property data_object: DataObject

Источник данных для слоя.

get_bounds() Rect

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

get_style(idx: int) Style

Стиль для указанного выражения.

Параметры:

idx – Порядковый номер выражения.

property isStacked: bool

Расположение столбчатой диаграммы в виде стопки, если True.

property is_valid: bool

Проверка на валидность объекта. Слой мог быть удален, как пример, в связи с закрытием таблицы

property max_zoom: float

Максимальная ширина окна, при котором слой отображается на карте. Учитывается только при установленном zoom_restrict=True

property min_zoom: float

Минимальная ширина окна, при котором слой отображается на карте. Учитывается только при установленном zoom_restrict=True

property need_redraw: Signal

Сигнал о необходимости перерисовать слой.

Тип результата:

Signal[]

property opacity: int

Прозрачность слоя в составе карты. Доступные значения от 0 до 100.

property orientationType: int

Ориентация относительно центроида.

Допустимые значения.

Константа

Значение

Описание

CENTER

0

Диаграмма рисуется по центру (по умолчанию)

LEFT_UP

1

Диаграмма выравнивается по левому верхнему краю

UP

2

Диаграмма выравнивается по верхнему краю

RIGHT_UP

3

Диаграмма выравнивается по верхнему правому краю

RIGHT

4

Диаграмма выравнивается по правому краю

RIGHT_DOWN

5

Диаграмма выравнивается по нижнему правому краю

DOWN

6

Диаграмма выравнивается по нижнему краю

LEFT_DOWN

7

Диаграмма выравнивается по нижнему левому краю

LEFT

8

Диаграмма выравнивается по левому краю

set_style(idx: int, style: Style)

Установка стиля оформления для выражения по его индексу в списке выражений.

Параметры:
  • idx – Индекс.

  • style – Назначаемый стиль.

Пример установки стиля для значения с индексом 2 первого тематического слоя.
style_new = Style.from_mapinfo("Brush (2, 255, 0)")
world.thematic[0].set_style(2, style_new)
property title: str

Наименование слоя.

property visible

Управляет видимостью слоя.

Выключение видимости верхнего слоя для активной карты:

if view_manager.active is not None:
    view_manager.active.map.layers[0].visible = False
property zoom_restrict: bool

Будет ли использоваться ограничение по отображению. Если установлено True, то для ограничения отображения слоя в зависимости от масштаба используются значения свойств zoom_min и zoom_max