PieThematicLayer - Круговые диаграммы
- class axipy.PieThematicLayer
Базовые классы:
ThematicLayer
,AllocationThematic
,OrientationThematic
,StyledByIndexThematic
Тематика в виде круговых диаграмм.
- Параметры:
expressions – Наименования атрибутов или выражений в виде списка
list
.
pie = PieThematicLayer(["Население", "Мужское", "Женское"]) pie.allocationType = PieThematicLayer.SQRT style_lay_pie = Style.from_mapinfo("Brush (8, 65535, 0)") # Заменим стиль pie.set_style(0, style_lay_pie) # Добавляем к основному слою world.thematic.add(pie)
Классовые методы:
create
(dataObject)Создает слой на базе открытой таблицы или растра.
Свойства:
Тип распределения значений.
Координатная система, в которой находятся данные, отображаемые слоем.
Источник данных для слоя.
Проверка на валидность объекта.
Максимальная ширина окна, при котором слой отображается на карте.
Минимальная ширина окна, при котором слой отображается на карте.
Прозрачность слоя в составе карты.
Ориентация относительно центроида.
Начальный угол отсчета диаграммы.
Наименование слоя.
Управляет видимостью слоя.
Будет ли использоваться ограничение по отображению.
Методы:
Возвращает область, в которую попадают все данные, которые могут быть отображены на слое.
get_style
(idx)Стиль для указанного выражения.
set_style
(idx, style)Установка стиля оформления для выражения по его индексу в списке выражений.
Сигналы:
Сигнал об изменении контента слоя.
Сигнал о необходимости перерисовать слой.
- 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_object: DataObject
Источник данных для слоя.
- get_bounds() Rect
Возвращает область, в которую попадают все данные, которые могут быть отображены на слое.
- get_style(idx: int) Style
Стиль для указанного выражения.
- Параметры:
idx – Порядковый номер выражения.
- property is_valid: bool
Проверка на валидность объекта. Слой мог быть удален, как пример, в связи с закрытием таблицы
- property max_zoom: float
Максимальная ширина окна, при котором слой отображается на карте. Учитывается только при установленном zoom_restrict=True
- property min_zoom: float
Минимальная ширина окна, при котором слой отображается на карте. Учитывается только при установленном zoom_restrict=True
- 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 – Назначаемый стиль.
style_new = Style.from_mapinfo("Brush (2, 255, 0)") world.thematic[0].set_style(2, style_new)
- property visible
Управляет видимостью слоя.
Выключение видимости верхнего слоя для активной карты:
if view_manager.active is not None: view_manager.active.map.layers[0].visible = False