Слой символов маркеров—ArcGIS Pro | Документация
Слои символов маркеров являются компонентами символов, которые рисуют определенную форму, например, круг, дерево или трехмерный фонарный столб, в заданном местоположении по отношению к геометрии. Они наиболее часто используются в точечных символах, но также могут использоваться в линейных символах и полигональных символах для рисовки форм вдоль линий и контуров или внутри областей. Слои маркеров для линейных или полигональных символов включают опции размещения маркеров, определяющий расположение маркеров относительно геометрии. Существуют три типа слоев маркеров. Установите тип в режиме Формат символа панели Символы на вкладке Свойства на вкладке Слои .
Тип маркера | Описание |
---|---|
Маркер-фигура | Использует векторную геометрию для задания формы маркера. |
Маркер-рисунок | Использует изображение для задания оформления маркера. |
Маркер — 3D-модель | Использует модель 3D для задания оформления маркера. В режиме 2D модель символа будет отображена в виде плоского изображения. |
Процедурный маркер | Используется пакет правил для определения 3D-объекта как маркера. Процедурные маркеры используются только в 3D. Если вы работаете в 2D, то есть применяете эти символы на двухмерной карте, процедурная составляющая игнорируется и не отображается. |
Слои маркеров-фигур
Слои маркера-фигуры используют геометрию векторной графики для задания формы и внешнего вида маркера. Данная геометрия получается из одного из четырех источников, представлены в таблице ниже:
Источник | Описание |
---|---|
Вставьте геометрию из Формы | Выберите из небольшой галереи простых, общих форм. |
Вставьте форму из Стиля | Выберите существующий точечный символ в стиле и используйте его в качестве источника для формы маркера. Многослойные точечные символы приводят к слою сложных маркеров, состоящих из нескольких элементов символа. Щелкните галерею Элемент для просмотра элементов и выберите элемент, чтобы изменить его оформление. Здесь каждый элемент отрисовывается отдельным символом, вместо единого символа, примененного ко всему слою маркеров. |
Вставьте форму из Шрифта | Выберите глиф из установленного шрифта в качестве источника геометрии для формы слоя маркера. |
Вставьте геометрию из Файла | Выберите файл масштабируемой векторной графики (.svg) или улучшенный метафайл (.emf). Внимание:Если геометрия маркера импортируется из файла масштабируемой векторной графики (.svg), поддерживается только часть функционала SVG. Поддерживаются файлы SVG с простыми путями, формами, текстом, встроенными атрибутами рисования, отрезками путей и изображениями. Графика с настройками прозрачности в файле SVG при импорте конвертируется в изображение. Поэтому для сохранения элемента как вектора, перед импортом сделайте прозрачные элементы полностью непроницаемыми в файле SVG (используя внешнее приложение для рисования). Затем заново примените прозрачный цвет элементу после импорта. Подробнее см. раздел Поддержка масштабируемой векторной графики. |
Независимо от того как получена геометрия формы маркера, сама форма отрисовывается с использованием полигонального символа, как определено в ниспадающей галерее Символ заливки геометрии. Выберите символ из данной галереи или щелкните Другие полигональные символы в галерее для выбора одного из доступных стилей. Только базовые свойства полигонального символа – Цвет, Цвет контура и Ширина контура – могут быть изменены.
При изменении формы слоев символов маркеров можно использовать Рамка соответствия для корректного изменения размеров связанных слоев символов. Как правило, фрейм больше, чем видимая часть графики символа. По умолчанию настройки вновь созданных маркеров символов форм учитывают фрейм слоя символов. При конвертации символов из старых проектов или стилей этот параметр соответствует их предыдущему оформлению.
В контексте 3D можно задать Глубину для слоев символа маркера-фигуры, чтобы придать им объемный вид. Отметьте Установить вертикально, чтобы поставить символ вертикально, как бы зафиксированным в местоположении. Когда он находится в этом состоянии, можно перемещаться сверху и позади него.
Если слой маркера содержит элементы символов, можно редактировать свойства символов каждого элемента. Вы можете изменить некоторые основные свойства элемента непосредственно под галереей Элементов. Чтобы получить доступ к дополнительным свойствам символа элемента, выполните следующие действия:
- Выберите элемент из галереи Элементов.
- Откройте галерею символов для элемента. В зависимости от геометрии графики текущего элемента, эта галерея называется Символ геометрии точки, Символ геометрии линии, Символа геометрии полигона или Символ геометрии текста.
- В меню галерея выберите Формат точечного символа, Формат линейного символа, Формат полигонального символа или Формат текстового символа.
- На вспомогательной панели Формат встроенного символа измените символ по мере необходимости.
- Чтобы сохранить пользовательский символ для повторного использования, нажмите кнопку меню в правом верхнем углу и нажмите кнопку Сохранить символ в стиль.
- Нажмите кнопку Вернуться на предыдущую страницу символов, чтобы вернуться на панель Формат символа.
Слои маркеров-рисунков
Слои маркеров-рисунков вместо векторной формы используют файл изображения для задания маркера. Данное изображение выводится либо из существующего точечного символа, либо из файла изображения. В режиме Формат символа панели Символы, на вкладке Свойства, на вкладке Слои разверните группу Оформление. Щелкните Рисунок, чтобы выбрать файл изображения. Настройте Качество, Фон и Размер, если это необходимо.
Источник | Описание |
---|---|
Вставка рисунка из Стиля | Выберите из существующего точечного символа в стиле. |
Вставьте рисунок из Файла | Выберите файл (.bmp), JPEG (.jpg), PNG (.png) или GIF (.gif). Выберите анимированный файл GIF (.gif), чтобы создать анимированный слой символов-маркеров. Подсказка:Чтобы использовать другое изображение слоя символа маркера-рисунка с управляемыми атрибутами символами, изображения должны храниться в растре или в поле BLOB. Рассмотрите возможность их хранения в таблице вложений, присоединив таблицу к классу объектов и указав поле вложения для символов. |
Кроме того, если это необходимо, в группе Оформление настройте свойства слоя маркера Качество, Фон и Размер. В контексте 3D можно отметить Инвертировать фоновое изображение, чтобы показывать изображение не зеркальным при осмотре символа с обратной стороны. Можно задать Глубину для слоев символа маркера-рисунка, чтобы придать им объемный вид. Отметьте Установить вертикально, чтобы поставить символ вертикально, как бы зафиксированным в местоположении. Когда он находится в этом состоянии, можно перемещаться сверху и позади него.
Подсказка:
Задайте для свойства Фон белый цвет, использующийся по умолчанию, чтобы отобразить картинку в ее исходном виде. Задание для этого свойства значения «нет цвета» приведет к тому, что изображение не будет отображено.
Слои маркеров-3D моделей
Слои маркеров-3D моделей используют истинную трехмерную графическую модель для определения маркера. Данная модель выводится либо из галереи простых объемов, либо из модели в существующем точечном 3D-символе, либо из файла. В режиме Формат символа панели Символы, на вкладке Свойства, на вкладке Слои разверните группу Оформление.
Источник | Описание |
---|---|
Вставить модель из Формы | Выберите из небольшой галереи простых, общих объемов. |
Вставьте модель из Стиля | Выберите из существующего точечного символа в стиле. |
Вставка модели из Файла | Выберите файл COLLADA (.dae), 3ds Max (.3ds), OpenFlight (.flt), Wavefront (.obj), GL Transmission Format (.glTF) или Binary GL Transmission Format (.glb). Выберите файл GL Transmission Format (.glTF) с анимацией, чтобы создать анимированный слой символов-маркеров. Чтобы анимировать символы в контексте 2D, используйте слой символов с маркерами-рисунками указывающий на актированный GIF (.gif)-файл для этого. См. раздел Маркеры glTF для изучения форматов .glTF и .glb и просмотра списка поддерживаемых этой спецификацией объектов. |
Кроме того, если это необходимо, в группе Оформление настройте свойства слоя маркеров Высота (Z), Ширина (X) и Глубина (Y). Щелкните линейку слева от этих свойств, чтобы указать, связаны ли они друг с другом для соотносительной настройки. Свойство Ось преобладающего размера определяет, какой размер зависит от глобальных изменений размера, сделанных для точечного символа на уровне базовых свойств.
Фон слоев символов маркеров — 3D-моделей
Чтобы добавить цвет к маркерам 3D-моделей, нужно поставить отметку Фон модели, чтобы активировать выбор цвета. По умолчанию используется белый цвет, но можно выбрать другой цвет. Можно применить цвет ко всей модели либо только к определенным ее граням — в зависимости от того, как была создана соответствующая 3D-модель. Модели, выглядящие как полностью белые, обычно предназначены для тематических приложений и окрашиваются целиком.
Если отметка Фон модели не стоит, к модели цвет не применен, и она отрисовывается в своих исходных цветах. Помните, что это отличается от применения белого или полностью прозрачного окрашивания и может привести к другим результатам. Если отметка Фон модели не стоит, инструмент выбора цвета выключен, а цвет слоя символов заблокирован и выключен . Это означает, что все изменения цвета символа — как на вкладке Символ , так и из символов слоя — не изменят цвет слоя маркеров-3D моделей.
Слои процедурных маркеров
Процедурные маркеры используют пакет правил для определения 3D-объекта как маркера. Пакеты правил — это скрипты, задающие оформление этих объектов и некоторые свойства конфигурации. Пакеты правил создаются в ArcGIS CityEngine. @StartRule пакета правил должно указывать аннотацию @InPoint, определяющую, что пакет применяется к точечной геометрии. Свойства, которые вы видите для слоя процедурный маркеров, определяются собственно пакетом правил. Для каждого из этих свойств есть значения по умолчанию, но их можно заместить определенными значениями либо путем соединения свойств с атрибутами данных.
Свойства слоя маркеров
Помимо визуальной формы слоя маркеров есть другие свойства, определяющие размер и положение маркера относительно геометрии объекта, а также то, как он ведет себя при повороте. Ниже перечислен порядок операций, в котором применяются категории свойств символа. Очень важно принимать это во внимание при построении составных слоев маркера, которые включают повороты и смещения. Этот порядок в целом повторяет порядок, в котором свойства представлены на панели Формат символа:
- Остается вертикальным (только 3D-свойство)—Маркер ориентирован относительно осей.
- Точка якоря—Маркер ориентируется относительно геометрии объекта.
- Поворот—Маркер поворачивается вокруг точек якоря.
- Размер—Изменяется размер маркера относительно точки якоря, если для него задано относительное положение (либо размер изменяется из основных свойств символа).
- Отступы — Маркер сдвигается относительно геометрии объектов при отсутствии других его преобразований.
Связанные разделы
Отзыв по этому разделу?
Местоположение слоев символа маркера—ArcGIS Pro
Слои символов-маркеров чаще всего используются в точечных символах, размещаясь, как правило, прямо на геометрии точечных объектов. Вы можете уточнить точки якоря и сдвиги маркера, чтобы настроить его относительное положение. Слои символов-маркеров также используются в линейных и полигональных символах, располагаясь вдоль линий и контуров, на конечных точках либо внутри полигонов.
Расположения маркеров
Если в линейный или полигональный символ входит слой маркерных символов, он включает размещение маркера, то есть то, как и где располагаются маркеры относительно геометрии объекта. Слои символов-маркеров в точечном символе не содержат размещения маркера: они всегда размещаются относительно точечной геометрии. Есть ряд вариантов размещения маркеров, из которых вы можете выбрать. Большинство подходят и для линейных, и для полигональных символов, однако некоторые – только для одного из этих типов геометрии.
- При выбранном линейном или полигональном символе откройте панель Форматировать символ и щелкните вкладку Свойства.
- Добавьте слой символов-маркеров в символ в случае необходимости.
- Щелкните вкладку Слои . Выделите слой символов-маркеров и разверните заголовок Размещение маркеров.
- Задайте значение Размещение, как это описано в расположенной ниже таблице. Воспользуйтесь просмотром символов для проверки этих настроек.
Размещение маркера | Описание | Пример |
---|---|---|
Вдоль линии | Маркеры равномерно распределяются по линии или контуру полигона в соответствии со свойством Шаблон размещения, который может определяться одним числом или несколькими числами. Шаблон размещения 10 размещает маркеры каждые 10 точек (или других единиц длины, заданных в единицах отображения 2D-символов). Шаблон размещения 10 2 располагает маркер в 10 точках вдоль линии, следующий — в двух точках далее, затем еще один в 10 точках от него и т. п. Отметьте свойство Вдоль линии для ориентировки маркеров на линии, а не над ней. Настройте Перпендикулярный сдвиг, чтобы разместить маркеры вдали от линии. Определите, будут ли окончания отрисовываться с маркером, либо это будет пробел, либо ограничений не будет, задав свойство Окончания. Укажите для свойства Окончания значение С половиной пробела для получения непрерывного перехода от одной линии к другой. Если для свойства Окончания задано Пользовательские, вы можете задать Пользовательский сдвиг, чтобы настроить то, как маркеры будут располагаться по отношению к концу линии. Используйте свойство Сдвиг, чтобы отодвинуть все маркеры от линии. | Треугольные маркеры, расположенные на равных интервалах вдоль линии, обозначают фронт холодной погоды. |
Вдоль линии с произвольным размером | Маркеры располагаются равномерно вдоль линии или границы полигоны в соответствии со свойством Шаблон размещения, но размер и ориентация размещения выбираются случайным образом, так как задано свойство Случайно. Сдвиги и окончания заданы так же, как и при размещении Вдоль линии. | Маркеры нерегулярной формы случайного размера и под случайным углом обозначают каменистую береговую линию |
Вдоль линии с переменным размером | Маркеры располагаются равномерно вдоль линии или границы полигона в соответствии со свойством Шаблоном размещения, но размер изменяется в прогрессии, как это задано в свойствах Минимальное приближение, Максимальное приближение, Счетчик размера и Метод. Ориентация случайным образом не меняется. Маркеры всегда ориентированы по линии, но вы можете сделать сдвиг от линии случайным – с помощью свойства максимальный случайный сдвиг. Окончания заданы так же, как и при размещении Вдоль линии. Включите свойство Разместить по частям, чтобы разместить маркеры в каждой части составных объектов. | Маркеры урагана, увеличивающиеся в размерах вдоль линии, обозначают путь урагана. |
Вокруг полигона | Один маркер размещается вокруг полигона в месте, заданном свойством Расположение. Используйте свойство Сдвиг от ребра, чтобы переместить маркер внутрь или снаружи полигона. Включите свойство Разместить по частям, чтобы разместить маркеры в каждой части составных объектов. | Маркер предупреждения на контуре заполнения штриховкой обозначает зону опасности. |
На концах | Маркеры размещаются на концах линии, как это задано в свойстве На концах. Выберите Оба, Вначале, В конце или Нет. Ориентация и сдвиги заданы так же, как и при размещении Вдоль линии. Размещение доступно только в линейных символах. Включите свойство Разместить по частям, чтобы разместить маркеры в каждой части составных объектов. | Маркер машины, размещенный на конце линии, обозначает маршрут путешествия. |
На линии | Один маркер размещается вначале, в середине или в конце линии либо один маркер размещается в середине каждого сегмента линии, как задано в свойстве Относительно. Ориентация настраивается тем же способом, что и размещение Вдоль линии, вы можете задать значение Перпендикулярного сдвига и Сдвига вдоль линии. Включите свойство Разместить по частям, чтобы разместить маркеры в каждой части составных объектов. | Маркер туриста, размещенный на пунктирной линии, обозначает туристическую тропу. |
На вершинах | Один маркер размещается на вершинах линии или контура, в соответствии со свойством На заданных вершинах. Отметьте свойство Вдоль линии для ориентировки маркеров на геометрии. Включите свойство Перпендикулярный сдвиг, чтобы разместить маркеры вдали от геометрии. Включите свойство На концах, чтобы разместить маркеры на начальной и конечной точке геометрии. Включите свойство Контрольные точки, чтобы разместить по одному маркеру на каждой вершине контрольной точки. Вы можете добавить опорные точки с эффектом символа. Включите свойство Разместить по частям, чтобы разместить маркеры в каждой части составных объектов. | Столбы коммуникаций, размещенные на вершинах линии, обозначают линию электропередачи. |
В относительных положениях | Маркеры размещаются пропорционально длине на линии или контуре, основываясь на пропорции общей длины линии в свойстве Положения. Вы можете настроить расположения, указав значения для свойств Позиция начала, Позиция окончания и Перпендикулярный сдвиг. Отметьте свойство Сначала перевернуть, направить маркер на первой конечной точке в обратном направлении от других маркеров. Включите свойство Разместить по частям, чтобы разместить маркеры в каждой части составных объектов. | Два маркера стрелки размещены пропорционально вдоль линии, обозначая тематическую линию. |
В измеренных единицах | Задайте свойство Интервал, чтобы разместить один маркер вдоль линии на заданном значении в соответствии с m-значениями на объекте. Связанный маркер может включать текстовый элемент, который связан с атрибутом m-значения. Маркер можно разместить с помощью свойства Угол к линии. Задайте свойство Перпендикулярный сдвиг, чтобы разместить маркеры вдали от геометрии. Включите свойство На концах, чтобы разместить маркеры на начальной и конечной точке геометрии. Задайте свойство Темп пропуска маркеров, чтобы пропускать маркеры через определенные интервалы. Это полезно, когда два или более уровней интервалов отображаются вместе. Включите свойство Разместить по частям, чтобы разместить маркеры в каждой части составных объектов. Более подробно см. Нарисовать измеренные штрихи вдоль линий. | Два слоя маркеров с текстовыми элементами различающихся размеров, размещенными вдоль линии, обозначают расстояние вдоль маршрута. |
В центре | Используйте свойство Метод, чтобы разместить один маркер внутри полигона или на полигоне, в центре масс полигона или в центре ограничительного прямоугольника полигона. Вы можете задать сдвиги в x и y, а также вырезать маркер по границе полигона, если он превышает этот размер, либо наоборот перекрывает контур полигона. Включите свойство Разместить по частям, чтобы разместить маркеры в каждой части составных объектов. Размещение доступно только в полигональных символах. | Маркер дерева, размещенный в центре сплошного заполнения полигона зеленым цветом, обозначает парк. |
Заполнение полигона | Используйте свойство Расположение, чтобы разместить маркеры внутри полигона, либо с фиксированной сеткой, либо случайным образом. Задайте промежутки между маркерами в свойствах Шаг X и Шаг Y. Если для свойства Расположение выбрано Фиксированный, задайте значение Угол сетки. Если установлено Случайный, задайте значение Хаотичности. Если два слоя маркеров отрисовываются вместе, укажите разные значения для Начальных значений, чтобы размещение точно было по-разному случайным. Одинаковые исходные значения случайным образом размещают случайные маркеры из двух слоев символов в разных точках. Можно задать сдвиги по X и Y и вырезать маркеры по границе полигона, если они накладываются на контур полигона. Размещение доступно только в полигональных символах. | Два типа маркеров рыбы, размещенные случайным образом внутри сплошного голубого полигона, обозначают озеро с запасами рыбы. |
Точки якоря
Точка якоря является местоположением в слое символов маркеров, которая показывает, где символ отображается по отношению к геометрии объекта. Когда вы вращаете слой символов-маркеров или меняете его размер, трансформация начинается от точки якоря. Можно установить общие позиции точек якоря посредством нажатия Предварительные настройки точек якоря и выбора местоположения из галереи. Это ярлык для настройки точек якоря X, Y и Z. (В 2D вы работаете только с Х и Y точек якоря. ) Вы позже можете уточнить эти настройки после выбора вами предустановки, как стартовой точки. Можно задать точки якоря как относительный процент от экстента слоя символа маркеров или как абсолютное расстояние.
- На панели Форматировать символ, на вкладке Свойства, щелкните вкладкуСлои .
- Выделите слой символов маркера и раскройте заголовок Расположение.
- Разверните меню Предустановки точки якоря и выберите предустановленный набор значений точек якоря.
- Дополнительно уточните далее значения точек якоря X, Y и Z (только в 3D). Воспользуйтесь просмотром символов для проверки этих настроек.
Когда в контексте 3D слой маркера находится в режиме билборд, точки якоря доступны только в двух измерениях – X и Y. Когда у слоя маркеров геометрии или изображений есть значение Глубина 0 и точки якоря задаются в относительных процентах, точка якоря Z отключена, потому что отсутствует Z-толщина, в которой следует настроить местоположение якорной точки.
Смещения
Смещения являются линейными перемещениями, которые применяются к слою символов маркеров из центра точки якоря после выполнения всех других преобразований.
- На панели Форматировать символ, на вкладке Свойства, щелкните вкладкуСлои .
- Выделите слой символов-маркеров и разверните заголовок Расстояние сдвига.
- Задайте значения Сдвига X, Сдвига Y или Сдвига Z (только в 3D). Воспользуйтесь просмотром символов для проверки этих настроек.
Прежние версии:
При импорте карты или сцены из ArcMap, ArcScene или ArcGlobe либо импорте стиля имеющиеся значения сдвига символов конвертируются в точки якоря. Значения не могут быть в точности равны подсчету разности поворотов.
Связанные разделы
Отзыв по этому разделу?
– SVG&колония; Масштабируемая векторная графика
Элемент
определяет графику, которая будет использоваться для рисования стрелок или полимаркеров на заданном
,
,
или < полигон >
элементов.
Маркеры присоединяются к фигурам с помощью свойств marker-start
, marker-mid
и marker-end
.
html, тело, свг { высота: 100%; }
-
высота маркера
Этот атрибут определяет высоту окна просмотра маркера.
Тип значения : <длина> ; Значение по умолчанию :3
; Анимация : да-
маркерШтук
Этот атрибут определяет систему координат для атрибутов
markerWidth
,markerHeight
и содержимогоuserSpaceOnUse
|StrokeWidth
; Значение по умолчанию :StrokeWidth
; Анимация : да-
ширина маркера
Этот атрибут определяет ширину окна просмотра маркера. Тип значения : <длина> ; Значение по умолчанию :
3
; Анимация : да-
восток
авто
|автозапуск-реверс
| <угол> ; Значение по умолчанию :0
; Анимация : да-
сохранить соотношение сторон
Этот атрибут определяет, как должен деформироваться фрагмент svg, если он встроен в контейнер с другим соотношением сторон. Тип значения : (
: данет
|xMinYMin
|xMidYMin
|xMaxYMin
|xMinYMid
|xMidYMid
|xMaxYMid
|xMinYMax
|xMidYMax
|xMaxYMax
) (соответствует
|срез
)? ; Значение по умолчанию :xMidYMid соответствует
; Анимация-
ссылка
Этот атрибут определяет координату x опорной точки маркера. Тип значения :
осталось
|центр
|справа
| <координата> ; Значение по умолчанию :0
; Анимация : да-
№
Этот атрибут определяет координату y опорной точки маркера. Тип значения :
вверху
|центр
|дно
| <координата> ; Значение по умолчанию :0
; Анимация : да-
ViewBox
Этот атрибут определяет границу области просмотра SVG для текущего фрагмента SVG. Тип значения :
Глобальные атрибуты
- Основные атрибуты
В частности:
id
,tabindex
- Атрибуты стиля
-
класс
, стиль - Атрибуты условной обработки
В частности:
requiredExtensions
,systemLanguage
- Атрибуты презентации
В частности:
,clip-path
,clip-rule
,color
,color-interpolation
,Цветовое Ренденринг
,Cursor
,Дисплей
,заполнить
,заполнение
,-руле
,Фильтр
,Mask
,OPACEY
,Poinder-Avents
,UPACEY
,Poinder-Avents
Opacity
,Poinder-Avents
,Opacity
,.
Ренденринг формы
,ход
,ход-газетчик
,Husm-Dashoffset
,Stroke-LineCap
,Инсульт-линейка
,Инсульт-Митерлимит
,Инсульт-расточительность
,Необходимый
,преобразование
,вектор-эффект
,видимость
- Атрибуты ARIA
Aria-ActiveDescendendend
,ARIA-Atomic
,ARIA-AutocOpplite
,Aria-Busy
,, проверенная Aria
,Aria-Colcount
,Aria-Colindex
,4,
,,
,
,4,
,
,
,
,4,
,
,
,
,4,
,
,
,. aria-controls
,aria-current
,aria-describedby
,aria-details
,aria-disabled
,aria-dropeffect
,aria-errormessage
,aria-expanded
,aria-flowto
,aria-grabbed
,aria-haspopup
,aria-hidden
,Aria-Invalid
,Aria-Keyshortcuts
,Aria-Label
,Aria-Labelledby
,-level
,Aria-Live
,Aria-модал
,Aria-Multilin -многовыбираемый
,Ария, ориентированная
,, ария
,Aria-Placeholder
,Aria-Posinset
,Aria-Pressed
,ARIA-Readonly
,ARIA-Relevant
,ARIA-Required
. -RoledescriptionAria-Rowcount
,Aria-Rowindex
,Aria-rowsspan
,, выбранный арией
,Aria-Setsize
,Aria-Sort
,Aria-Valuemax
,Aria-Valu-Valu-ValueNinininininin
,ARIA-Valuemax
,Aria-Valu-Valueinininininininin,
4,
,ARIA-Valu-ValueNinin,
4,
,ARIA-Valu-Valu-ValueNinin,
4.
,ария-валюнов
,ария-значениетекст
,роль
Specification |
---|
Scalable Vector Graphics (SVG) 1.1 (Second Edition) # MarkerElement |
BCD tables only load in the browser
with JavaScript enabled. Включите JavaScript для просмотра данных.- Связанные свойства маркера:
marker-start
,marker-mid
иmarker-end
Последнее изменение: 000Z"> 14 сентября 2022 г.
Маркеры стилей в Python
Питон > Основы > Маркеры для укладки
Предложить редактирование этой страницыКак стилизовать маркеры в Python с помощью Plotly.
Впервые в Plotly?
Plotly — бесплатная графическая библиотека с открытым исходным кодом для Python. Мы рекомендуем вам прочитать наше руководство по началу работы, чтобы получить последние инструкции по установке или обновлению, а затем перейти к нашим учебным пособиям по основам Plotly или погрузиться прямо в некоторые учебные пособия по базовым диаграммам.
Добавить границу маркера¶
Чтобы маркеры выглядели более отчетливо, вы можете добавить границу к маркерам. Этого можно добиться, добавив свойство линии к объекту маркера.
Вот пример добавления границы маркера к граненому точечному графику, созданному с помощью Plotly Express.
В [1]:
импортируйте plotly.express как px df = px.data.iris() рис = px.scatter(df, x="sepal_width", y="sepal_length", color="species") fig.update_traces (маркер = dict (размер = 12, строка = дикт (ширина = 2, цвет = 'DarkSlateGrey')), селектор = dict (режим = 'маркеры')) рис.шоу()
Вот пример, в котором создается пустая фигура графического объекта, а затем добавляются две трассировки рассеяния с границей маркера.
В [2]:
импортировать plotly.graph_objects как есть # Сгенерировать пример данных импортировать numpy как np np.random.seed (1) x = np.random.uniform (низкий = 3, высокий = 6, размер = (500,)) y = np.random.uniform (низкий = 3, высокий = 6, размер = (500,)) # Построить фигуру рис = идти.Рисунок() # Добавляем точечную трассировку с маркерами среднего размера рис.add_trace( идти.Scatter( режим = 'маркеры', х=х, у=у, маркер=дикт( цвет = 'Светло-голубой', размер=20, строка = словарь ( цвет = 'Средний фиолетовый', ширина=2 ) ), шоулегенд=ложь ) ) # Добавляем трассировку с большим маркером рис.add_trace( идти.Scatter( режим = 'маркеры', х=[2], у=[4,5], маркер=дикт( цвет = 'Светло-голубой', размер=120, строка = словарь ( цвет = 'Средний фиолетовый', ширина=12 ) ), шоулегенд=ложь ) ) рис.шоу()
Полностью непрозрачный, значение по умолчанию, полезно для неперекрывающихся маркеров. Когда много точек перекрываются, может быть трудно наблюдать плотность.
Контрольная граница маркера с помощью Dash¶
Dash — лучший способ создавать аналитические приложения на Python с использованием рисунков Plotly. Чтобы запустить приложение ниже, запустите pip install dash
, нажмите «Загрузить», чтобы получить код, и запустите python app.py
.
Начните с официальной документации Dash, и узнайте, как без особых усилий создавать и развертывать подобные приложения с помощью Dash Enterprise.
Выход[3]:
Зарегистрируйтесь в Dash Club → Бесплатные шпаргалки, а также обновления от Криса Пармера и Адама Шредера доставляются на ваш почтовый ящик каждые два месяца. Включает советы и рекомендации, приложения сообщества и подробные сведения об архитектуре Dash. Присоединяйтесь .
Непрозрачность¶
Установка непрозрачности вне маркера установит непрозрачность трассы. Таким образом, это позволит лучше видеть дополнительные трассы, но, как и при полной непрозрачности, трудно различить плотность.
В [4]:
импортировать plotly.graph_objects как есть # Сгенерировать пример данных импортировать numpy как np x = np. random.uniform (низкий = 3, высокий = 6, размер = (500,)) y = np.random.uniform (низкий = 3, высокий = 4,5, размер = (500,)) x2 = np.random.uniform (низкий = 3, высокий = 6, размер = (500,)) y2 = np.random.uniform (низкий = 4,5, высокий = 6, размер = (500,)) # Построить фигуру рис = идти.Рисунок() # Добавляем первую трассировку разброса с маркерами среднего размера рис.add_trace( идти.Scatter( режим = 'маркеры', х=х, у=у, непрозрачность=0,5, маркер=дикт( цвет = 'Светло-голубой', размер=20, строка = словарь ( цвет = 'Средний фиолетовый', ширина=2 ) ), name='Непрозрачность 0,5' ) ) # Добавляем вторую трассировку разброса с маркерами среднего размера # и непрозрачность 1.0 рис.add_trace( идти.Scatter( режим = 'маркеры', х=х2, у=у2, маркер=дикт( цвет = 'Светло-голубой', размер=20, строка = словарь ( цвет = 'Средний фиолетовый', ширина=2 ) ), name='Непрозрачность 1. 0' ) ) # Добавляем трассировку с большими маркерами рис.add_trace( идти.Scatter( режим = 'маркеры', х=[2, 2], у=[4,25, 4,75], непрозрачность=0,5, маркер=дикт( цвет = 'Светло-голубой', размер=80, строка = словарь ( цвет = 'Средний фиолетовый', ширина=8 ) ), шоулегенд=ложь ) ) рис.шоу()
Непрозрачность маркера¶
Для максимальной видимости плотности рекомендуется установить непрозрачность внутри маркера marker:{opacity:0.5}
. Если существует несколько трасс с высокой плотностью, рассмотрите возможность использования непрозрачности маркера в сочетании с непрозрачностью трасс.
В [5]:
импортировать plotly.graph_objects как есть # Сгенерировать пример данных импортировать numpy как np x = np.random.uniform (низкий = 3, высокий = 6, размер = (500,)) y = np.random.uniform (низкий = 3, высокий = 6, размер = (500,)) # Построить фигуру рис = идти. Рисунок() # Добавляем точечную трассировку с маркерами среднего размера рис.add_trace( идти.Scatter( режим = 'маркеры', х=х, у=у, маркер=дикт( цвет = 'Светло-голубой', размер=20, непрозрачность=0,5, строка = словарь ( цвет = 'Средний фиолетовый', ширина=2 ) ), шоулегенд=ложь ) ) # Добавляем трассировку с большими маркерами рис.add_trace( идти.Scatter( режим = 'маркеры', х=[2, 2], у=[4,25, 4,75], маркер=дикт( цвет = 'Светло-голубой', размер=80, непрозрачность=0,5, строка = словарь ( цвет = 'Средний фиолетовый', ширина=8 ) ), шоулегенд=ложь ) ) рис.шоу()
Непрозрачность цвета¶
Чтобы максимизировать видимость каждой точки, установите цвет в виде строки rgba
, которая включает значение альфа 0,5.
В этом примере цвет маркера устанавливается равным 'rgba(135, 206, 250, 0.5)'
. Значения RGB 135, 206 и 250 взяты из определения цвета CSS LightSkyBlue
, который используется в предыдущих примерах (см. https://www.color-hex.com/color/87cefa). Линия маркера останется непрозрачной.
В [6]:
импортировать plotly.graph_objects как есть # Сгенерировать пример данных импортировать numpy как np x = np.random.uniform (низкий = 3, высокий = 6, размер = (500,)) y = np.random.uniform (низкий = 3, высокий = 6, размер = (500,)) # Построить фигуру рис = идти.Рисунок() # Добавляем точечную трассировку с маркерами среднего размера рис.add_trace( идти.Scatter( режим = 'маркеры', х=х, у=у, маркер=дикт( цвет = 'rgba (135, 206, 250, 0,5)', размер=20, строка = словарь ( цвет = 'Средний фиолетовый', ширина=2 ) ), шоулегенд=ложь ) ) # Добавляем трассировку с большими маркерами рис. add_trace( идти.Scatter( режим = 'маркеры', х=[2, 2], у=[4,25, 4,75], маркер=дикт( цвет = 'rgba (135, 206, 250, 0,5)', размер=80, строка = словарь ( цвет = 'Средний фиолетовый', ширина=8 ) ), шоулегенд=ложь ) ) рис.шоу()
Пользовательские символы маркеров¶
Атрибут marker_symbol
позволяет вам выбирать из широкого набора символов для представления маркеров на ваших рисунках.
Основные символы: Circle
, Square
, Diamond
, Cross
, x
, Triangle
, Pentagon
, Hexagram
, Star
, Diamond
, DARGLAS. ,
бабочка
, звездочка
, хэш
, y
и строка
.
Каждый базовый символ также представлен числом. Добавление 100 к этому числу эквивалентно добавлению суффикса «-open» к имени символа. Добавление 200 эквивалентно добавлению «-точки» к имени символа. Добавление 300 эквивалентно добавлению «-open-dot» или «dot-open» к имени символа.
На следующем рисунке наведите указатель мыши на символ, чтобы увидеть его имя или номер. Установите атрибут marker_symbol
, равный этому имени или номеру, чтобы изменить символ маркера на вашем рисунке.
Маркеры
со стрелкой шириной
исо стрелкой
появились в версии 5.11
В [7]:
импортировать plotly.graph_objects как есть из plotly.validators.scatter.marker импортировать SymbolValidator raw_symbols = SymbolValidator().значения имена = [] вариант имени = [] символы = [] для i в диапазоне (0, len (raw_symbols), 3): имя = raw_symbols[i+2] символы .append (raw_symbols [я]) nametems.append(name.replace("-open", "").replace("-dot", "")) namevariants.append(name[len(namestems[-1]):]) fig = go.Figure(go.Scatter(mode="markers", x=варианты имен, y=названия, marker_symbol=символы, marker_line_color="полночный синий", marker_color="светло-голубой", marker_line_width=2, marker_size=15, hovertemplate="имя: %{y}%{x}
номер: %{marker. symbol}")) fig.update_layout(title="Наведите указатель мыши на символы имени и номера!", xaxis_range=[-1,4], yaxis_range=[len(set(namestems)),-1], margin=dict(b=0,r=0), xaxis_side="top", height=1400, width=400) рис.шоу()
Использование пользовательского маркера¶
Чтобы использовать собственный маркер, установите символ
на маркер
. Здесь мы устанавливаем его на алмаз
.
В [8]:
импортируйте plotly.express как px. df = px.data.iris() рис = px.scatter(df, x="sepal_width", y="sepal_length", color="species") fig.update_traces( маркер = dict (размер = 8, символ = «алмаз», линия = dict (ширина = 2, цвет = «DarkSlateGrey»)), селектор = dict (режим = «маркеры»), ) рис.шоу()
Установка углов маркера¶
Новое в версии 5.11
Измените угол маркеров, установив угол
. Здесь мы устанавливаем угол маркеров стрелки
на 45
.
В [9]:
импортируйте plotly.express как px. df = px.data.iris() рис = px.scatter(df, x="sepal_width", y="sepal_length", color="species") fig.update_traces( маркер=дикт( размер = 12, символ = "стрелка", угол = 45, строка = dict (ширина = 2, цвет = "DarkSlateGrey") ), селектор = dict (режим = «маркеры»), ) рис.шоу()
Настройка эталонного угла¶
Новое в версии 5.11
В предыдущем примере эталонным углом является значение по умолчанию от до
, которое
означает, что все производители начинают с опорной точки угла, равной 0. Установите angleref
на предыдущую
, и маркер возьмет опорную точку угла из предыдущей точки данных.
В [10]:
импортировать панды как pd импортировать plotly.express как px импортировать plotly.graph_objects как есть df = px.data.gapminder() рис = идти.Рисунок() для x в df.loc[df.continent.isin(["Европа"])].country.unique()[:5]: fil = df. loc[(df.country.str.contains(x))] рис.add_trace( идти.Scatter( х=фил["год"], у=фил["поп"], режим="линии+маркеры", маркер=дикт( символ = "стрелка", размер=15, угловая ссылка = "предыдущий", ), имя=х, ) ) рис.шоу()
Использование зазора для позиционирования маркера¶
Новое в версии 5.11
Если у вас есть несколько маркеров в одном месте, вы можете использовать зазор
на маркере, чтобы отодвинуть его от другого маркера в направлении угла
.
В этом примере мы устанавливаем standoff=8
для маркера arrow
, который вдвое меньше другого маркера circle
, что означает, что он указывает точно на круг
.
В [11]:
импортировать панд как pd импортировать plotly.graph_objects как есть из графиков импорта данных df = data. gapminder() df = df.loc[(df.continent == "Америка") & (df.year.isin([1987, 2007]))] страны = ( df.loc[(df.continent == "Америка") & (df.year.isin([2007]))] .sort_values(by=["pop"], по возрастанию=True)["страна"] .уникальный() )[5:-10] data = {"x": [], "y": [], "colors": [], "years": []} для страны в странах: данные["x"].extend( [ df.loc[(df.year == 1987) & (df.country == страна)]["pop"].values[0], df.loc[(df.year == 2007) & (df.country == страна)]["pop"].values[0], Никто, ] ) данные ["y"].extend([страна, страна, нет]), данные ["цвета"].extend(["голубой", "темно-синий", "белый"]), данные ["годы"].extend(["1987", "2007", Нет]) рис = идти.Рисунок( данные = [ идти.Scatter( х=данные["х"], у=данные["у"], режим="маркеры+линии", маркер=дикт( символ = "стрелка", цвет = "королевский синий", размер=16, угловая ссылка = "предыдущий", противостояние=8, ), ), идти. Scatter( х=данные["х"], у=данные["у"], текст = данные ["годы"], режим="маркеры", маркер=дикт( цвет = данные ["цвета"], размер=16, ), hovertemplate="""Страна: %{y}
Население: %{x}
Год: %{text}""", ), ] ) fig.update_layout( title="Изменения населения 1987 по 2007 год», ширина=1000, высота=1000, showlegend=ложь, ) рис.шоу()
А как насчет Dash?¶
Dash — это платформа с открытым исходным кодом для создания аналитических приложений, не требующая Javascript и тесно интегрированная с графической библиотекой Plotly.
Узнайте, как установить Dash, по адресу https://dash.plot.ly/installation.
Везде на этой странице, где вы видите fig.show()
, вы можете отобразить одну и ту же цифру в приложении Dash, передав ее в фигура
аргумент компонента Graph
из встроенного пакета dash_core_components
следующим образом:
import plotly.