RangeThematicLayer - Интервалы¶
-
class
axipy.render.
RangeThematicLayer
(expression)¶ Тематическое оформление слоя с распределением значений по интервалам. Для распределения цветов по заданным интервалам могут быть использованы функции assign_* класса
ReallocateThematicColor
в зависимости от требуемых целей.- Параметры
expression (
str
) – Наименование атрибута таблицы или выражение.
# Пример создания тематики с последующим добавлением ее к базовому слою `world` range1 = RangeThematicLayer("Население") range1.ranges = 6 range1.splitType = RangeThematicLayer.EQUAL_COUNT range1.assign_two_colors(Qt.red, Qt.cyan) world.thematic.add(range1) # Пример запроса с последующей заменой:: v = world.thematic[0].get_interval_value(2) # Запрос v = (999, v[1]) # Заменим минимальное значение для интервала с индексом 2 world.thematic[0].set_interval_value(2, v) # Замена # Различные виды распределения интервалов тематик по цветам range1.assign_two_colors(Qt.red, Qt.yellow) range1.assign_three_colors(Qt.yellow, Qt.cyan, Qt.green, 4) range1.assign_rainbow() range1.assign_gray(80, 100)
Methods:
assign_gray
([minV, maxV])Распределение в виде градации серого.
assign_monotone
(color[, minv, maxv])Монотонная заливка разной яркости (оттенки красного, синего и т.п.).
assign_rainbow
([sequential, saturation, value])Распределение цветов по спектру.
assign_three_colors
(colorMin, colorMax, …)Цвет, распределенный между тремя заданными цветами (с разрывом).
assign_two_colors
(colorMin, colorMax[, useHSV])Равномерно распределяет оформление по заданным крайним цветам.
create
(dataObject)Создает слой на базе открытой таблицы или растра.
Возвращает область, в которую попадают все данные, которые могут быть отображены на слое.
get_interval_value
(idx)Возвращает предельные значения для указанного интервала в виде пары значений.
get_style
(idx)Стиль для указанного выражения.
set_interval_value
(idx, v)Заменяет предельные значения интервала.
set_style
(idx, style)Установка стиля оформления для выражения по его индексу в списке выражений.
Attributes:
Координатная система, в которой находятся данные, отображаемые слоем.
Signal[]
Сигнал об изменении контента слоя.Источник данных для слоя.
Проверка на валидность объекта.
Максимальная ширина окна, при котором слой отображается на карте.
Минимальная ширина окна, при котором слой отображается на карте.
Signal[]
Сигнал о необходимости перерисовать слой.Прозрачность слоя в составе карты.
Количество интервалов.
Тип распределения значений по интервалам.
Наименование слоя.
Управляет видимостью слоя.
Будет ли использоваться ограничение по отображению.
-
assign_gray
(minV=20, maxV=80)¶ Распределение в виде градации серого. Значение задается в интервале (0..100) от черного до белого.
-
assign_monotone
(color, minv=20, maxv=80)¶ Монотонная заливка разной яркости (оттенки красного, синего и т.п.). Цветовая схема HSL. Максимальное и минимальное значения задаются в интервале (0..100).
- Параметры
color (
QColor
) – Базовый цвет.minV – Минимальное значение.
maxV – Максимальное значение.
-
assign_rainbow
(sequential=True, saturation=90, value=90)¶ Распределение цветов по спектру. Цветовая схема HSV.
-
assign_three_colors
(colorMin, colorMax, colorBreak, br, useHSV=True)¶ Цвет, распределенный между тремя заданными цветами (с разрывом).
- Параметры
-
assign_two_colors
(colorMin, colorMax, useHSV=False)¶ Равномерно распределяет оформление по заданным крайним цветам.
-
property
coordsystem
¶ Координатная система, в которой находятся данные, отображаемые слоем.
- Тип результата
CoordSystem
-
classmethod
create
(dataObject)¶ Создает слой на базе открытой таблицы или растра.
- Параметры
dataObject (
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
¶ Источник данных для слоя.
- Тип результата
-
get_bounds
()¶ Возвращает область, в которую попадают все данные, которые могут быть отображены на слое.
- Тип результата
-
get_interval_value
(idx)¶ Возвращает предельные значения для указанного интервала в виде пары значений.
-
get_style
(idx)¶ Стиль для указанного выражения.
-
property
is_valid
¶ Проверка на валидность объекта. Слой мог быть удален, как пример, в связи с закрытием таблицы
- Тип результата
-
property
max_zoom
¶ Максимальная ширина окна, при котором слой отображается на карте. Учитывается только при установленном zoom_restrict=True
- Тип результата
-
property
min_zoom
¶ Минимальная ширина окна, при котором слой отображается на карте. Учитывается только при установленном zoom_restrict=True
- Тип результата
-
property
need_redraw
¶ Signal[]
Сигнал о необходимости перерисовать слой.- Тип результата
Signal
-
property
opacity
¶ Прозрачность слоя в составе карты. Доступные значения от 0 до 100.
- Тип результата
-
set_interval_value
(idx, v)¶ Заменяет предельные значения интервала.
-
set_style
(idx, style)¶ Установка стиля оформления для выражения по его индексу в списке выражений.
style_new = Style.from_mapinfo("Brush (2, 255, 0)") world.thematic[0].set_style(2, style_new)
-
property
splitType
¶ Тип распределения значений по интервалам.
¶ Константа
Значение
Описание
EQUAL_INTERVAL
1
Распределение исходя из равномерности интервалов (по умолчанию).
EQUAL_COUNT
2
Распределение исходя их равного количества объектов в каждом интервале.
MANUAL
3
Ручное распределение значений путем задания пределов вручную.
- Тип результата
-
property
visible
¶ Управляет видимостью слоя.
Выключение видимости верхнего слоя для активной карты:
if view_manager.active is not None: view_manager.active.map.layers[0].visible = False