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
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