Стиль боке: Лучшие советы по созданию эффекта боке

Содержание

Стиль Боке в фотографии, что это?

Давайте сначала разберемся, что подразумевает под собой такое слово как стиль боке в фотографии? Это обозначение взято из языка, на котором говорят японцы, и имеет значение размытость. Боке — это название говорит о границах фотоизображения, которые находятся за пределами фотоснимкав.

Что такое стиль боке?

 Боке — это размытие за пределами фотоизображения, то есть эффект не влияет на резкость самого фотоснимков, лишь на ее границы.

Объектив начинает фокусировку света за счет ключа точечного характера, то есть в виде конуса точной формы.

Самый верх конуса если начинает касаться матричной плоскости, то картинка попадает в фокус, на снимке образуется малая точка. При отличных характеристиках данная точка имеет наименьший размер и резкость снимка.

При объекте, который будет находиться не в фокусном пространстве конуса, освещения пересечется с матрицей, в результате чего точка на фото преобразуется в диск, последний называют кружок нерезкости, либо рассеянное пятно.

Если таких кружков много, то вместе они могут оказать большое влияние на эстетические качества снимка, на его часть или восприятие образа в целом.

Боке имеет значение быть на заднем плане, но некоторые фотомастера переносят его и на переднюю часть фотоснимка.

Если имеется маленькая глубина резкости, то эффект размытия может стать более видимым.

Размер кружков, которые обозначают рассеяния, будет больше, если камера имеет формат больших размеров.

Поговорим о качестве данного эффекта

Итак, боке никак не влияет на качество снимка, собственно говоря, и само боке не может быть плохим, например, либо хорошим.

Больше всего придает красоту снимку мягкое боке, оно плавно расплывается, при этом, не отвлекая взгляд от основного снимка.

Если боке имеет отчетливые, резкие границы, то изображение в целом плохо воспринимается зрителем, имеет результат отторжения.

Выглядит совершенный кружок, который не имеет отчетливой резкости, у которой вид диска, на который падает свет и имеющий края четкого вида.

Красота диска совершенна сама по себе, однако являясь частью размытого изображения, кружок создает иллюзорный вид, берет на себя резкие объекты, которые есть на передней части плана. Благодаря данной иллюзии эти объекты не так заметны зрителю.

Боке может разделить на несколько типов:

  • нейтральное;
  • хорошее;
  • плохое;

Что обозначает каждый из данных перечислений.

Идеального объектива не существует, плохо это или хорошо не имеет значения, поэтому объективам свойственны искажения, также некоторые аберрации.

Хорошее боке — это плавное уменьшение яркости кружка, у которого слабая резкость от центральной части к кромке по правилам обычного распределения.

Поэтому боке тут превращается в плюсы художественного типа.

Примером не очень хорошего боке является то, что концентрация больше меры шаровидных аберраций.

Фотографии в стиле Боке (Bokeh). Как сделать красивое боке

Добрый день, читатели моего блога! С вами на связи, Тимур Мустаев. Начался новый день, и я снова предлагаю вам пополнить знания по фотографии. Сегодня я хочу рассказать вам о том, что такое боке в фотографии.

Этот стиль создан для творческих личностей, фотографов, которые не просто разбираются в своей фотоаппаратуре, но и готовы экспериментировать, креативить и создавать уникальные изображения. Банальными фото уже никого не удивить – они уходят в прошлое!

Поэтому мне хочется узнать, а насколько ваши фотографии необычны, насколько вы смелы в реализации своих замыслов?

Понятие “боке”

Боке означает интересное, красивое размытие кадра. Оно может быть похоже на туман, который располагается по краям фотографии или на заднем плане. Фон получается в нерезкости, при этом мы можем различить очертания цветных кругов, снежинок, звезд и других фигур на нем.

В итоге у вас и объект (человек) в центре внимания, так как ничто лишнее вокруг него взгляд зрителя не отвлекает, и изысканный фон, который, несомненно, оживляет кадр.

Боке – это достаточно простой способ сделать из простой фотографии конфетку!

Перейдем к тому, как сделать его с помощью вашей оптики.

Настройка фотоаппарата

От чего же зависит эффект боке в фотографии? Обычно фигурное боке создается специальными насадками на объектив, а для получения размытия заднего плана иногда достаточно правильно выставить значения на фотоаппарате.

Боке во многом зависит от глубины пространства, изображаемого на снимке, и степени резкости объектов (ГРИП). В свою очередь, упомянутый параметр определяется:

  1. : чем больше диафрагма открыта, тем больше процент размытости в кадре.
  2. Фокусным расстоянием: большое фокусное расстояние дает более заметное боке. Если у вас объектив с зумом, то просто прокрутите его кольцо.
  3. Расстоянием до предмета: чем ближе вы подходите, тем вероятнее появится желаемый “туман”. Только учитывайте, что для каждого объектива есть максимально близкое расстояние, с которого аппарат еще может настроить фокус.
  4. Расстояние от предмета съемки, до заднего фона. Желательно, что бы объект съемки находился как минимум в 1 метре от фона. Это позволит, наиболее красиво размыть задний фон.

Для боке важна не только настройка фотокамеры, но и изначальная светосила. У светосильных и, как правило, дорогих объективов эта способность воспринимать свет намного выше.

Привлекательным размытием могут похвастаться портретные и макро объективы. Первые сделаны специально для съемки людей и выделения их на остальном фоне, вторые – для акцента на мелких объектах и увеличения их масштаба (насекомых, цветов, механизмов и др.). В такой оптике априори есть возможность выставить максимально открытую диафрагму, что усилит впечатление от боке.

Боке из подручных материалов

Любители и профессионалы, в общем люди, “съевшие собаку” на изучении фотоискусства, не всегда тратятся на дорогие аксессуары или современные технические вещи. Многие из них создают из подручных средств нечто невероятное. Так же дело обстоит с боке, которое мы вполне можем сделать в домашних условиях. Сомневаетесь? Тогда читайте дальше и попробуйте сами.

Итак, варианты необходимых материалов:

  • Целлофановый пакет – средство для создания классической нечеткости по периметру картинки. В данной части изображение будет находиться в зоне малой видимости, что сможет скрыть все недостатки в этих местах. Вот вам и дополнительный плюс изучения возможностей боке! Для этого всего лишь нужно обмотать пакет вокруг объектива так, чтобы он чуть-чуть закрывал обзор. Закрепите целлофан можно маленькими кусочками скотча.
  • Картон (или тонкий пластик): в его центре вырезается желаемая форма. Самодельный фильтр следует хорошо закрепить на объективе.
  • Разного рода ткань, цветные платки и т.д. Их также можно использовать, разместив по краю объектива, аналогично как целлофан.

Таким образом, вам необязательно приобретать набор специальных фильтров на фотоаппарат, чтобы получить впечатляющий фоновый рисунок на снимке. Чтобы приноровиться делать его качественным, вам нужна практика, но при этом не стремитесь все и всех снимать с эффектом боке. Используйте этот прием целесообразно – только там, где он действительно украсит снимок, дополнит, а не испортит его.

Вот пишу вам статью, и вспомнил момент из своей жизни. Сижу, и меня пробирает со смеху. Купил я как то, в далеком прошлом себе объектив полтинник (50 мм. f/1.8). Поставил на самую открытую диафрагму, а именно 1.8 и стал все фотографировать подряд, смотря на дисплей фотоаппарата и восхищаясь, какие красивые получаются фотографии.

Но когда я все фотографии скинул на компьютер, то разочаровался. Часть фотографий, где я фотографировал только один предмет или одного человека, относительно получились не плохо, и боке меня впечатлило. А все остальные, например, группы людей, здания и так далее, были не в резкости. Поэтому, будьте внимательны, когда устанавливайте минимальное значение диафрагмы.

Боке в фотографии – вещь субъективная. И учитывайте возможности вашего объектива, точнее его способность делать меньшую или большую ГРИП. Оцените, насколько красиво и приятно внешне смотрится боке на вашем фотоаппарате. По некоторым отзывам, даже форма лепестков диафрагмы конкретной модели объектива может влиять на особенности итогового боке.

Если вас действительно заинтересовал этот стиль фотографирования, и вы хотите более наглядно и детально изучить его, а также разобраться в своем фотоаппарате, познать все его возможности, то рекомендую вам видеокурс – «Цифровая зеркалка для новичка 2.0 ». Обалденный курс, лично меня он впечатлил своей простотой и грамотностью.

Всех вам благ, Тимур Мустаев.

22.02.2015 7714 Советы по фотографии 0

Боке́ (от яп. ボケ бокэ — «размытость», «нечёткость», «дымка») — термин, появившийся в нашем лексиконе в конце 1990-х годов и описывающий субъективные художественные достоинства части изображения, оказавшегося не в фокусе на фотографии. На многих изображениях фон размывается фотографом намеренно, для визуального выделения главного объекта съёмки. Особенно этот эффект визуализирует появление бликов, которые повторяют форму диафрагмы объектива (яркие кружочки, которые так любят многие).

Для создания боке нет четких настроек и системы измерения. Единственное, что действительно важно — это качество размытия. И, конечно же, надо понимать, что не существует четких границ между хорошем боке и плохим — на этот счет у каждого свое мнение.

Дмитрий Маркелов

Я же постараюсь кратко дать несколько советов, которые могут прояснить картину с этим эффектом у начинающих фотолюбителей.

1. Используйте широкую диафрагму

Фотографируйте на максимально возможной открытой диафрагме (если не при самом маленьком значении (оптические характеристики объектива на крайних значениях диафрагмы не оптимальны), которое позволяет ваш объектив, то на 1-2 стопа меньше). При широко открытой диафрагме глубина резкости уменьшается, а фокус сосредотачивается на небольшой части предмета съемки. Все пространство, окружающее точку фокуса, будет размыто, и соответственно будет образовано боке.

Дмитрий Маркелов

2. Фотографируйте на светосильные объективы

3. Не пренебрегайте зум-объективами

Очень часто зум-объективы подвергаются критике за недостаточно высокое качество боке в сравнении с объективами с фиксированным фокусным расстоянием. Это обусловлено, в первую очередь, тем, что максимальная светосила зум-объектива чаще всего ограничена значением f/2.8, тогда как это значение у «фиксов» значительно больше (f/1.8, f/1.4 и больше). Однако, если в вашем арсенале имеется зум-объектив, особенно длиннофокусный, вы можете также использовать его с целью создания боке. Увеличив объект съемки, вы отделите его от остальной сцены, тем самым создав выразительное боке.

И не забывайте, что недорогие зум-объективы имеют малые значения максимальной диафрагмы на «длинном» конце (при диапазоне, например, f/3.5-5.6 при крайнем значении ФР значение диафрагмы составит f/5.6), что может оказаться недостаточным для получения боке и приведет к увеличению выдержки для получения нормально экспонированного снимка (что, при низкой освещенности, потребует применение штатива).

Дмитрий Маркелов

Чем ближе вы располагаете камеру относительно объекта съемки, тем более размытым получается фон, а соответственно вероятность появления боке выше. У каждого объектива есть минимальная дистанция от объектива до предмета съемки, при которой возможно наведение фокуса. Макро объективы позволяют фотографировать при самых минимальных расстояниях, размывая большую часть кадра. Конечно, такая техника неприменима к портретной съемке, и достаточно дорогая.

Дмитрий Маркелов

5. О лепестках диафрагмы

Количество лепестком диафрагмы обязательно указывает производитель объектива в его характеристиках. Некоторые утверждают, что диафрагма с большим количеством закругленных лепестков дает более качественное боке. Однако лепестки диафрагмы влияют исключительно на форму боке, которое в большей степени зависит от оптической конструкции объектива.

Дмитрий Маркелов

6. Используйте эффект боке правильно

Боке не должно выходить на передний план (если это не является художественным приемом в конкретной ситуации). Если вы снимаете портрет — глубина резкости должна быть по всему лицу модели, а не только на кончике носа. Поэтому для начала продумайте фотографию, составьте композицию и уж только тогда для большей выразительности прибегайте к использованию этого эффекта, грамотно выставив значение диафрагмы для каждого конкретного случая съемки.

эффект боке

Многим профессиональным фотографам нравится эффектно размытый фон. Ведь это не только привлекает особое внимание и интерес к основному объекту в кадре, но и придает снимку особую изюминку и шик, существенно повышает качество фотографии. Такой эффект размытия фона по французски называют «боке» или расфокусировкой основного объекта фотосъемки.

Итак, что же представляет собой «боке»? В общих чертах – это рисунок, создаваемый объективом, который проецирует расфокусированные световые пятна на матрицу. Для получения красиво размытого фона на снимке обязательно выполнение минимум двух условий: Открыть полностью диафрагму и выбрать фон, на котором сквозь плотную преграду будет пробиваться контровый свет. К примеру – использовать в качестве фона листья, через которые будут проходить солнечные лучи. Особенная игра теней и «солнечных бликов» как раз создаст оригинальный размытый фон. Непосредственно качество снимка «боке» во многом определяется величиной расстояния до фона, контрастом рисунка светотеней и многими другими параметрами. Максимально открытая диафрагма даст круглую форму «боке», а немного прикрытая – форму многогранника, из-за специфической формы лепестков диафрагмы.

Фотограф, знающий как грамотно управлять ГРИП (глубиной резко изображаемого пространства), не столкнется с особыми трудностями с красивым размытием фона. Но одного лишь знания для этого недостаточно. Необходимо также , из-за того что один объектив по-своему отображает нерезкие объектив в отличии от другого. Одни размываю плавно и мягко, вторые покрывают двоящимися пятнами и линиями всю зону нерезкости. Если объектив выдает окантовку в бликах, неестественно четко очерчивает границу световых пятен или двоит линии – вам не удастся получить качественное «боке». Кстати говоря кит-объектив не подойдет для фотосъемки «боке», скорее всего будет нужна сменная оптика. Вполне подходящим будет стандартный объектив f 1,8 50 мм, для портретной съемки. Немаловажно обращать внимание при выборе объектива на форму лепестков диафрагмы. Это существенно влияет на размытие фона, от количества лепестков зависит насколько интересно размоется фон.

Теория съемки «боке». Следует помаксимуму открыть диафрагму, после чего перевести фотокамеру на ручной режим и сфокусироваться на самое близкое расстояние. Для съемки необходимо что-то блестящее, подойдет, к примеру, новогодняя елка, светодиодная гирлянда. Основной особенностью здесь является то, что сверкающие пятнышки должны быть помельче и поярче. А камеру следует настроить таким образом, чтобы «промахнуть» огоньки мимо фокуса.

Еще неплохо использовать для съемки самодельные фильтры, если вырезать в центре какую–то фигурку – звездочку, сердечко и т.п. Желательно из черного картона делается цилиндрик, называемый блендой, с таким диаметром, чтобы его можно было надеть на объектив. Спереди крепится на бленду тот самый фильтр – кружок из черного картона с вырезанной в центре фигуркой, размер которой определять нужно только путем проб. Во время съемки диафрагма полностью открыта.

Довольно интересный результат дает использование для съемки «боке» рюмок, фужеров и прочей прозрачной посуды. Необходимо держать бокал за ножку непосредственно перед объективом и крутить. Это очень увлекательное занятие, в процессе которого можно получить хорошее «боке», не прилагая особых усилий. Главное – следить за безукоризненной чистотой посуды, так как высохшие капли и отпечатки пальцев будет трудно устранять после в графическом редакторе.

Эффект «боке» также можно получить в графическом редакторе. Обладая навыками работы в программе по обработке снимков, ГРИП несложно усилить даже после съемки. К примеру воспользоваться кистью в виде круга, полупрозрачного с более темной окантовкой. Далее настроить кисть и создать папку с режимом наложений, в которой можно создавать слои и работать с сохраненной кистью. Можно поэкспериментировать с несколькими слоями, в каждом рисуя кистью с измененным размером и направлением. Под этой папкой создать слой, залитый разноцветным градиентом.

Снимки с эффектом «боке» довольно востребованы в фотостоках, в портретной или макросъемке, поэтому смысл научиться работать в этом направлении и эффектно выделять основной объект с помощью красивого размытия фона однозначно есть. Наберитесь терпения и фантазии, и повышайте профессиональный уровень также посредством оригинального «боке». Успехов!

Каждый фотограф и фотолюбитель в тот или иной момент стремится получить красивое боке. Создание эстетичного боке на фотографии – это, пожалуй, не столько умение, сколько творчество. С точки зрения техники, все, что вам необходимо сделать, чтобы получить боке – перейти в режим ручной фокусировки, и вращать фокусировочное кольцо на объективе по или против часовой стрелки. Но красивое боке – это не просто размытый фон и размытые окружности. Мы приготовили несколько советов, которые помогут вам улучшить боке на ваших фотографиях.

В наших предыдущих статьях (см. статьи и ) мы уже затрагивали вопрос о получении боке. В этой статье мы рассмотрим дополнительные способы придания вашим фотографиям большей эстетичности.

Камера: Canon EOS 400D. Выдержка: 1/30с. Диафрагма: f/1.8. Фокусное расстояние: 50 мм. ISO: 800. Экспокоррекция: 0. Вспышка: отключена.

Как улучшить боке: Передний и задний план

Вместо того, чтобы использовать неброский фон, не отвлекающий внимание от переднего плана (или наоборот), попробуйте найти способ объединить их. Сделайте так, чтобы каждый элемент фотографии нес вклад в общую привлекательность изображения. Если на заднем плане есть огни не в фокусе – оцените, как они соотносятся с передним планом? Представляют ли они собой еще один элемент фотографии, или выступают в качестве удачного случайного дополнения?

Часто этот прием доводится наблюдать на свадебных фотографиях, когда, например, невеста находится в фокусе ближе к камере, в то время как на заднем фоне размещается размытое изображение фигуры жениха. Либо, когда на переднем плане мы видим пару в фокусе, а гости находятся в размытом фоне.

Камера: Canon EOS 400D. Выдержка: 1/160с. Диафрагма: f/4.5. Фокусное расстояние: 35 мм. ISO: 200. Экспокоррекция: +1/3 EV. Вспышка: отключена.

Как улучшить боке: Источники света

Для того чтобы на фотографии получить не только размытый фон, но и красивые светящиеся окружности, вам нужно отыскать источники света, например, уличные фонари, фары, свечи и т.д. — именно источники света, находящиеся вне фокуса, создают эффектные световые круги. Определившись с источниками света, вам нужно расположить объект съемки достаточно далеко от них, либо использовать объектив с широкой диафрагмой и уменьшить расстояние между камерой и объектом съемки.

Много полезной информации вы можете найти в нашей статье .

Как улучшить боке: Хорошее и плохое боке

Гладкое, «сливочное» боке без резких краев, как правило, называют «хорошим боке». С другой стороны, боке с ярко выраженными краями или недостаточно размытое принято считать «плохим».

Нужно помнить, что боке рисуют объективы, а не камера. И если вы хотите добиться красивое боке, то вам следует ориентироваться на выбор портретного или телеобъектива – они обычно рисуют более эстетичное боке, нежели дешевые зум-объективы.

Пример хорошего боке:

Камера: Canon EOS 400D. Выдержка: 1/160с. Диафрагма: f/2.8. Фокусное расстояние: 100 мм. ISO: 100. Экспокоррекция: 0. Вспышка: отключена.

А вот пример плохого:

Камера: Canon EOS 400D. Выдержка: 1/250с. Диафрагма: f/3.2. Фокусное расстояние: 50 мм. ISO: 100. Экспокоррекция: 0. Вспышка: отключена.

Как улучшить боке: Текстуры

Добавьте к вашим фотографиям с боке текстуры и вы увидите, как преобразится изображение. Самый простой способ сделать это – сфокусироваться на лобовом стекле или окне вашего автомобиля. После этого вы можете разбрызгать воду на стекло и сфокусироваться на текстуре, образуемой каплями и потеками воды. При расположении за стеклом расфокусированных источников света, например, фар или фонарей, вы получите очень интересный эффект.

Камера: Canon EOS 400D. Выдержка: 1/40с. Диафрагма: f/1.8. Фокусное расстояние: 50 мм. ISO: 400. Экспокоррекция: 0. Вспышка: отключена.

Кроме добавления текстур к фотографиям с боке, вы можете использовать сами изображения с боке в качестве текстур для своих фотографий. Просто наложите одно из них на свою фотографию и увидите какой интересный эффект получится.

Камера: Canon EOS 400D. Выдержка: 1/400с. Диафрагма: f/2.8. Фокусное расстояние: 50 мм. ISO: 100. Экспокоррекция: 0. Вспышка: отключена.

Как улучшить боке: Город в расфокусе

Популярные достопримечательности были сфотографированы 100500 раз во всех мыслимых ракурсах и во все доступные часы дня и ночи. Если вас тяготит делать «обязательное фото перед Эйфелевой башней», попробуйте взглянуть на городские достопримечательности с точки зрения расфокусированного изображения.

Камера: Canon EOS 400D. Выдержка: 1/20с. Диафрагма: f/5.6. Фокусное расстояние: 18 мм. ISO: 200. Экспокоррекция: 0. Вспышка: отключена.

Очень часто начинающие фотографы сталкиваются с проблемой непонимания специальной терминологии. И очень часто натыкаются на агрессивное поведение более опытных собратьев, которые зачастую ленятся что-либо объяснять. И, например, на простой вопрос: что такое боке , не могут просто ответить, а начинают использовать сложные формулы и непонятные многим термины.
Но ведь все когда-то с чего-то начинали. Сегодня мы поговорим о часто употребляемом, в речи фотографов всего мира, термине боке. Если отойти от точных научных определений, то самое простое для понимания, значение термина боке можно определить, как: художественное размытие фона на фотографии; изображение находящееся не в фокусе; эстетическое качество размытия. Происхождение термина идет из японского языка, где 暈け или ボケ(Боке или Bokeh ) означает — «размывание» или «туман», возможный перевод «размытость» и «нечёткость».

Хотя это трудно оценить, но одни объективы дают более приятный фон вне зон фокусировки, чем другие. Хорошее боке особенно важно для портретных объективов, макро-объективов и иногда телеобъективов, потому что они обычно используют с маленькую глубину резкости. Глубина резкости изображаемого пространства часто обозначается словом — ГРИП. Посмотрите на картинку ниже, значение диафрагмы — играет решающую роль в том, получите вы размытый фон или нет. В любой зеркальной камере можно установить значение диафрагмы, если не знаете как это сделать — посмотрите в инструкции к своему фотоаппарату. Установив к примеру значение на f/1,4 вы получите очень размытый фон, при четком предмете на переднем плане. Именно такое значение установить смогут не все, так как эта возможности зависит напрямую от вашего объектива. Просто выберите минимальное значение из доступных для вашего объектива.

Существуют разные критерии по определению качества боке, но все же тут присутствует очень личностное восприятие. Одному человеку может понравиться боке фотографии, а другой скажет, что такой рисунок боке ему вообще не нравится. Сам рисунок боке напрямую зависит от самой оптической схемы объектива, от лепестков диафрагмы. Причем совсем необязательно, что бы рисунок был из световых кругляшков или многоугольников, боке — это любое размытие фона.

Цена объектива как правило имеет значение, и хороший портретник стоит недешево. Как вариант — обратить свое внимание на советскую оптику. Сегодня используя цифровую зеркальную камеру и старые объективы можно получать очень классные снимки. Главное правильно подобрать переходник.

Рекомендуем также

боке стиль фона eps | UIDownload

боке стиль фона eps

ключевые слова

  • Абстрактные
  • Художественный дизайн
  • фон
  • мигает
  • синий
  • размытие
  • размытый
  • боке
  • яркий
  • бизнес
  • кнопка
  • празднование
  • круг
  • цвет
  • творческий
  • украшение
  • DOF
  • точка
  • редактируемый
  • эффект
  • элемент
  • праздничный
  • фокус
  • сверкающий
  • светиться
  • светящийся
  • освещенный
  • свет
  • современное
  • партия
  • круглый
  • блеск
  • блестящий
  • мягкий
  • Космос
  • сверкать
  • стиль
  • стильный
  • символ
  • шаблон
  • текстура
  • боке стиль фона
  • eps
  • фона

DMCA Contact Us

бесплатная загрузка ( eps, 2.19MB )

Связанная векторная графика

  • Абстрактный красный и белый фон Боке дизайн eps ai
  • Стили металлического слоя psd
  • Боке огни фон eps
  • Неоновый текстовый стиль psd
  • Текстовый стиль Avenged psd
  • Красный фон боке eps
  • Записать текстовый стиль бесплатно PSD psd
  • Абстрактный красный и белый Боке расфокусированные огни фон дизайн eps ai
  • Креативный стиль шрифта Хэллоуина Стили Photoshop psd
  • Стиль 3D-слоя в стиле ретро psd
  • Белый фон боке в ярком стиле eps
  • Глянцевый текстовый стиль psd
  • День святого валентина фон в стиле боке ai eps
  • Синий стиль ретро текста psd
  • Стиль текста горячих трубок psd
  • Стиль текста лягушки psd
  • Кубики льда в стиле текста бесплатно PSD psd
  • Праздничный текстовый стиль psd
  • Абстрактный фон зеленый стиль боке eps
  • Стиль текста Тора psd
  • Конфеты Стиль текста psd
  • Бесплатные элегантные стили для фотошопа psd
  • Иллюстрация боке ai eps
  • Абстрактный Прохладный Красный Фон Расфокусированные Огни Боке ai eps
  • Абстрактные Боке Иллюстрация eps ai svg
  • Стеклянный текстовый стиль psd
  • Загадочный текстовый стиль psd
  • Стиль слоя 3D-рептилии psd
  • Блестящий стиль слоя psd
  • Шаблон фона боке ai
  • Стиль слоя 3D Sci-Fi psd
  • Абстрактный зеленый и желтый Боке огни фон дизайн ai eps
  • Стиль текста 3D Gold psd
  • Бока мультфильм задать вектор svg eps
  • Набор векторных Бока eps svg
  • Квадратные векторные стили градиента — вектор ai
  • Темно-зеленый боке ид мубарак дизайн eps
  • Бесплатные векторные золотой боке фон ai
  • Белый боке эффект фон вектор eps
  • Стиль текста 3D Wood psd
  • Стиль текста чешуи дракона psd
  • Бронзовый стиль текста psd
  • Стиль текста из расплавленного металла psd
  • Серебряный блеск боке вектор eps
  • Стили слоя psd
  • Эффект металлического текста (стиль слоя Photoshop) psd
  • 11 видов стилей Photoshop в рождественском стиле psd
  • Сезонный стиль слоя Freebie PSD psd
  • Боке фон с декоративными свечами дивали eps
  • Сертификат в абстрактном стиле eps
Загрузи больше
  • Contact Us

Эффект «Боке» – ФотоКто

 

 

 

Термином «бокэ» называется размытие, представляющее собой субъективные художественные достоинства части изображения, оказавшейся на снимке вне глубины резкости.

Бокэ — один из самых потрясающих художественных инструментов, которые только есть в арсенале фотографа. Грамотное применение бокэ требует как творческого видения, так и знания возможностей и характеристик камеры и оптики.

Размытие фона уместно в том случае, если вы хотите сосредоточить внимание на главное объекте. Одно из самых удачных применений — портретная съемка. Используя Боке вы можете придать снимку определенное настроение, атмосферность, тем самым сделать эффект не менее важным, чем макияж или наряд модели.

Не менее важен стиль Боке и в макро-съемке. Так же Боке часто используют в городской съемке, делая акцент на завитушках забора, деревьев, скамеек, на какой-нибудь интересной детали автомобиля… В общем, ГДЕ и КОГДА угодно, самое главное, чтобы был свет. 

 

 

  1. Максимальная открытость диафрагмы 

Переведите камеру в режим приоритета диафрагмы и откройте диафрагму как можно шире. Чем меньше значение диафрагмы, тем шире она открыта, тем больше света попадает на матрицу.

        2.  Подойдите ближе

Глубина резкости является необходимым элементом. Ведь Боке зависит не только от диафрагмы, но и от расстояния между вами и фотографируемым объектом. Если у вас нет возможности подойти ближе, то используйте зум.

         3.  Ученье — свет

Хорошим фоном могут стать мелкие источники света такие, как — новогодние гирлянды, фары автомобилей в пробке и т.д.

          4.  Фокус

Не забудьте удостовериться, что фотографируемым объект находится в фокусе, иначе изображение получится некачественным и эффект Боке у вас не получится.

          5.  Свет и Тьма

Запомните: Предмет должен быть хорошо освещен, либо не освещен вообще (тогда у вас получится темный силуэт с красивым фоном).

          6.  Не прислоняться

Между фоном и объектом должно быть БОЛЬШОЕ расстояние. Чем дальше фон от фокусной точки, тем сильнее размытие фона.

          7.  Не надо грязи

Прежде чем фотографировать, убедитесь, что поверхность, на которой находится ваш объект, чистая и не содержит пылинок/царапин, иначе они сделают размытие неряшливым.

          8.  Солнечный круг, небо вокруг

Лучше всего, если свет приближен сильнее к горизонту, а не к зениту, т.к. чем выше солнце, тем меньше света попадает на вертикальные поверхности, и тем меньше света отражается от этих поверхностей, а так сложнее использовать естественный свет для получения хорошего Боке.

          9.  Перемена мест слагаемых

Бокэ может быть не только фоном для главного объекта, но и выступить в качестве этого самого главного объекта. Тут важно, чтобы идея такой перемены мест была понятна без объяснений, иначе иначе зритель решит, что перед ним — технический брак.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

6 советов для получения красивого боке


Добрый день, читатели моего блога! С вами на связи, Тимур Мустаев. Начался новый день, и я снова предлагаю вам пополнить знания по фотографии. Сегодня я хочу рассказать вам о том, что такое боке в фотографии.

Этот стиль создан для творческих личностей, фотографов, которые не просто разбираются в своей фотоаппаратуре, но и готовы экспериментировать, креативить и создавать уникальные изображения. Банальными фото уже никого не удивить – они уходят в прошлое!

Поэтому мне хочется узнать, а насколько ваши фотографии необычны, насколько вы смелы в реализации своих замыслов?

Виды боке в фотографии


Боке может принимать различный вид: от пятиугольников, различных кружочков до всяческих причудливых форм. В классическом варианте боке число граней у многоугольников напрямую зависит от количества лепестков диафрагмы: чем их больше, тем более круглыми будут боке.
Степень яркости также разделяет боке на три основных вида: низкой, равномерной и высокой яркостью.

  • Первый тип характеризуется достаточно яркими краями и низкой яркостью в центре кадра.
  • Второй – довольно гармоничный тип боке. Он предусматривает равное распределение яркости и «лояльное» цветовое решение. Создать эффект боке такого плана можно только с качественным объективом.
  • Последний отличается блеклыми краями и высокой степенью яркости элементов, находящихся в центре снимка.

С помощью подручных средств


Многие фотографы, которые серьёзно занимаются художественной фотографией, часто используют различные вспомогательные средства. Будучи установленными на фотокамеру они позволяют получить интересные эффекты. Для получения размытия можно использовать следующие материалы:

  • Целлофановая плёнка;
  • Плотная бумага;
  • Алюминиевая фольга;


Целлофановая или полиэтиленовая плёнка, закреплённая непосредственно на объективе фотоаппарата создаёт эффект нечёткости по периметру кадра. Для этого не обязательно полностью закрывать объектив фотоаппарата. Можно частично перекрыть зону обзора или сделать в плёнке небольшое отверстие по центру. Экспериментируя с этим приёмом и разным типом освещения можно получить уникальные кадры с разновидностями обсуждаемого эффекта. Насадки на объектив фотоаппарата, сделанные из плотной бумаги позволяют получить боке своеобразного рисунка. Для этого в материале вырезается отверстие определённой формы. Это может быть звёздочка, стрелка, или любая другая фигура. В результате размывка светового пятна будет иметь вид вырезанной фигурки. Для работы с самодельным фильтром придётся подгонять размер прорези под конкретное ФР объектива фотоаппарата.

Для домашней или павильонной съёмки портрета подойдет обычная алюминиевая пищевая фольга. Её слегка мнут и наклеивают на ровную поверхность с помощью скотча. Слева и справа от этого экрана располагаются разноцветные источники света, ориентированные на мятую фольгу. В результате получается фон, состоящий из красивых цветовых пятен.

Как сделать боке на фотоаппарате?

Для того чтобы получился эффект боке на фотографии вами должны быть соблюдены нехитрые условия:

  1. по максимуму «распахнутая» диафрагама;
  2. наибольшее фокусное расстояние;
  3. минимальное расстояние между вами и вашим объектом съемки;
  4. весьма внушительное расстояние от выбранного объекта до фона (чем больше данное расстояние, тем сильнее размытие).
  5. лучше всего подобрать менее однородный фон – снимок будет более интересным.

Также многое зависит от объектива, на который вы снимаете. Объектив для боке лучше всего выбирать с наименьшим диафрагментым числом, иными словами: с наибольшем отверстием диафрагмы. В большинстве случаев, объективы, идущие в комплекте с зеркальными фотоаппаратами, не могут позволить вам получить ярко выраженный эффект. А потому некоторые производители фототехники выпустили в продажу специальные объективы для боке.

Мягкому художественному размытию фона поспособствует объектив с фокусным расстоянием в 55 мм и с отсутствием зума.

Эффект боке


В переводе с японского языка слово «боке» означает размытость, плохую чёткость или туман. Таким образом, эффект боке получается, когда в процессе фотосъёмки используется короткий отрезок резко изображаемого пространства, а всё остальное остается не в фокусе. Во многих жанрах фотографии эффект боке является важнейшим средством выразительности снимка. Существует даже отдельное направление в художественной фотографии. Его можно определить как фотосьёмка с малой глубиной резкости. Очень выразительными получаются индивидуальные и групповые портреты на фоне точечных источников света. За счёт эффекта боке светящиеся точки превращаются в туманные круги или многогранники разных цветов. Получить боке с помощью фотоаппарата достаточно просто, но самые интересные выразительные эффекты достигаются использованием различных технических приёмов. Получить фотографию с эффектом боке можно следующим образом:

  • Диафрагмирование фотоаппарата;
  • Использование соответствующих объективов;
  • Применение масок;
  • Использование ресурсов фоторедактора.

Боке в фотографии: создаем различные формы диафрагмы

Доводилось ли вам восхищаться потрясающими размытиями в виде елочек, сердечек и прочих необычных форм? В этой статье мы откроем вам секрет создания такого эффекта.

Как сделать боке на фото? Да очень просто: вам не придется разбирать оптическое устройство, стоит лишь обзавестись следующими предметами:

  • картоном;
  • фотоаппаратом с более-менее светосильным объективом;
  • карандашом;
  • ножницами;
  • и скотчем.

Приступим к изготовлению нашего аксессуара:

  1. Карандашом обведите объектив вашего фотоаппарата по кромке.
  2. Наверняка вы получите ровный круг необходимого диаметра. Также вы можете дорисовать небольшие «ушки» для того, чтобы позже закрепить конструкцию на объектив.
  3. Теперь строго по центру нарисуйте то, что вы желаете лицезреть на снимке вместо кружков.

Единственная сложность в данной операции в том, что под разные объективы и фокусные расстояния придется делать прорезь определенного размера. Если вы сделаете фигурку слишком широкой, то результата вы не увидите вообще. Если, наоборот, сделать прорезь недостаточно широкую— вы получите эффект DX-объектива: т.е. 100% виньентирование по краям.

Но как показывает практика, что лучше уже вырезать слишком узкое отверстие, а уж потом расширять его, чем переборщить и заново создавать заготовку.

Для того чтобы быстро проверить правильное боке, просто выставите ручной режим фокусировки и наведите объектив на ближайший предмет таким образом, чтобы позади него находилась что-то в роде гирлянды с множеством огоньков. Если у вас вышел волшебный кадр с размытым разноцветным фоном, то можно смело отправиться на поиски за интересными кадрами на вечерние улицы, в кафешки и торговые центры — там вы найдете большое скопление огней, особенно в новогодние праздники.

Получение нужного эффекта


Фотографы знают, что манипулируя настройкой диафрагмы и фокусировкой можно изменять глубину резкости на фотоаппарате. Это всегда используется при макросъёмке и очень часто при фотографировании портретов. Фотографируя камерой предметы очень маленьких размеров нужно иметь в виду, что всё постороннее в кадре отвлекает внимание, нарушая целостность композиции. Поэтому макросъёмка фотоаппаратом осуществляется на очень малой глубине резко изображаемого пространства. За счёт этого, только основной объект фотографии выглядит резким и чётким, а всё, что находится чуть позади, делается туманным с размытыми контурами. При портретной съёмке зеркальной фотокамерой основной акцент делается на лицо, что так же требует его особого выделения, за счёт снижения резкости второго плана. Очень оригинальный результат получается, когда в зону нерезкости попадают световые блики или объекты повышенной яркости. Для создания фотографий с боке можно использовать следующие приёмы:

  • Световые блики должны находиться далеко сзади объекта съёмки или непосредственно перед объективом;
  • Расстояние между источниками освещения и точкой фокуса должно быть максимальным;
  • На фотоаппарат нужно устанавливать объективы с минимально возможной диафрагмой и большим фокусным расстоянием. Для получения эффектного боке на фотоаппарат обычно ставят оптику с диафрагмой f/1.4-2.8 и ФР 70-200 мм.

Начинающим фотолюбителям, для получения необходимого эффекта боке, можно использовать даже фотоаппараты с объективами «kit» – входящими в комплект поставки. Для этого нужно установить на фотоаппарате максимальное фокусное расстояние и полностью открыть диафрагу. В зависимости от типа объектива это может быть ФР 55 или 135 мм и диафрагма f/4-5.6. Далее нужно подойти как можно ближе к главному объекту, при этом второй план или источники света должны оказаться далеко сзади этого объекта или же с точностью наоборот. Фокус фотоаппарата наводится по одной центральной точке. Такая техника позволяет получить вполне приличное размытие. Очень эффектно получается при съёмке ночного города, освещённого огнями. Некоторые фотографы снимают только размытые объекты, используя витрины, освещённые разноцветными светильниками или праздничную иллюминацию.

Tadaa SLR

На iOS аналогичных приложений меньше, но они имеются и хорошего качества. Например, Tadaa SLR. В программе можно быстро выделить основной объект съемки, исправить огрехи при выделении, приблизить часть картинки и отменить последние изменения — это основной набор, необходимый для успешного редактирования снимков. Приложение также позволяет менять интенсивность и тип размытия, имеет набор фильтров для дополнительной постобработки, удобно в работе и приятно оформлено. Стоит отметить, что приложение платное, его стоимость составляет примерно $5.

AppStore

Что такое Боке?

Боке – в сущности зона нерезкости. Многие люди понимают его как расфокусированную область фотографии, которую можно улучшать с помощью источников света и цвета позади объекта съемки.

Я – большой поклонник творческого боке в фотографии, но, из-за моего плотного графика, мне пришлось снимать много фотографий вечером дома. Оказалось, что съемка в такой обстановке очень ограничена, что вынудило меня использовать другие ресурсы, которые не используешь обычно в фотосъемке днем или на улице.

Этот полезный совет покажет вам пошаговый процесс создания вашего собственного красивого боке из елочных гирлянд в домашней фотосъемке. Этот эффект особенно полезен, если вы снимаете небольшие неодушевленные объекты, а также людей и домашних животных.

Совет 3: Правильный фон

Будем надеяться, что вышеупомянутые камни преткновения были устранены, и ваш смартфон предоставит технически чистую фотографию боке. Но вот еще один креативный выбор, на котором мы можем сосредоточиться: получить правильный фон. В конце концов, не стоит использовать режим боке, если это только серая стена позади объекта, так как серая стена одинаково скучна, не зависимо от того, размыта она или нет.

Вместо этого используйте фоны с пятнами света. Например, цепочка огней или освещенные окна отдаленных зданий, которые трансформируются размытием в красивые мягкие пятна света. Другим примером является солнце, сияющее сквозь листья и ветви дерева, что обеспечивает множество мелких бликов. Если вы действительно оглядитесь, у вас будет много возможностей для создания отличного эффекта боке.

Равномерно засвеченные диски нерезкости

Большинство любит классическое боке в виде правильных, равномерно засвеченных дисков нерезкости. Желательно без зеленой каймы или с минимальной каймой.


правильные кружки

Идеального ничего нет, потому по краю всё равно кружки будут не совсем круглыми при съемке на открытой диафрагме. Фото сделано на Carl Zeiss Planar 85/1.4 c/y.

Point Blur(Размытые фото)

Пожалуй, самая адекватная альтернатива Snapseed. Приложение порадовало приятным современным интерфейсом и богатым набором инструментов. Здесь можно масштабировать и двигать картинку (а можно это запретить), гибко настроить размытие, его интенсивность и тип, менять толщину кисти и многое другое. К недостаткам отнесем неочевидное расположение ластика (все же, пошаговый возврат назад не всегда спасает) и невозможность снизить силу размытия там, где оно уже сделано. Для удобства пользователя в программу встроен простейший корректор основных настроек: яркости, контрастности, насыщенности и т.д. При умелом обращении этих опций будет вполне достаточно для создания достойных фотографий.

Google Play

От чего зависит рисунок боке?

Как мы уже заметили, рисунок у всех объективов разный. Одни объективы размывают задний план «в кашу», другие создают множество рваных колец, третьи словно бы закручивают его. Характер размытия изображения зависит от конструктивных особенностей объектива. Общая тенденция такова: у старых объективов с ручной фокусировкой, большими, толстыми стёклами и малым количеством линз боке имеет более пластичный, объёмный рисунок, нередко очень агрессивный и сильно отвлекающий на себя внимание.

Вот для примера фотография, сделанная на объектив Гелиос-40 — старый советский портретный объектив со светосилой 1.5. Позади цветка множество капель. Как видите, они выглядят довольно контрастно и даже рвано.


Фотография на Гелиос 40 — боке

А следующий снимок сделан на дешёвый никоновский объектив Nikkor 50 1.8D. Наблюдается похожий эффект, но «бокешки» (кружки заднего плана) уже менее контрастные


Боке Nikkor 50 1.8D

Или вот ещё фотография, сделанная на Гелиос-40. Обратите внимание, как закручивается задний план.


Тест боке Гелиос 40

На следующем фото пример размытия заднего плана объективом Tokina 100 2.8 macro. Как видите, кружки менее контрастны, эффект закручивания слабо выражен:


Боке Tokina 100 2.8

Однако, многие забывают, что помимо боке заднего плана есть ещё и боке переднего плана. Вот пример работы объектива Nikkor 80-200 2.8D, здесь присутствует как задний, так и передний план. Между моделью и фотографом влезли листики, которые вы можете видеть как жёлтые пятна.


Боке Nikkor 80-200 2.8

Геометрическое виньетирование

Связано такое боке с геометрическим виньетированием и формой диафрагмы в открытом положении. Краевые лучи отсекаются т.к. уходят за края линз и мы получаем усеченный диск. На камере с кроп-фактором такой эффект уменьшается т.к. сенсор камеры с кроп-факторов «видит» только центральную часть изображения, которое даёт полнокадровый объектив.

FabFocus

Эта программа, в первую очередь, создана для редактирования портретов и снабжена встроенным алгоритмом обнаружения лиц. Приложение может работать в автоматическом режиме, самостоятельно находя основной объект и размывая фон. При желании, пользователь может вмешаться в этот процесс, выбрать форму для боке и интенсивность эффекта. В работе программа проста, особого обучения не требует. Зато требует денег, покупка FabFocus обойдется пользователю примерно в $5.

AppStore

На этом все. О своих любимых редакторах фотографий вы можете рассказать в комментариях.

Бонус 2: Обрамление

Если вы снимаете портрет, пожалуйста, не размещайте человека прямо в середине изображения, лучше сдвинуть его немного в сторону. Если изображение должно выглядеть немного более драматичным, мы рекомендуем согласовать его с правилом третей. Здесь фотография разделяется на две вертикальные и две горизонтальные линии в девяти равных прямоугольниках. Затем наиболее важные тематические части выравниваются по этим линиям.

Более гармоничное изображение будет результатом выравнивания или кадрирования на основе , когда линии смещены немного дальше к середине изображения.

Конечно, полномасштабная камера предлагает более благоприятные результаты, но вы не всегда будете носить такую камеру. В любом случае, я думаю, что смартфоны имеют отличные инструменты для съемки красивых фотографий.

Как работает?

До недавнего времени получить этот эффект можно было лишь на фотокамере с дорогостоящей светосильной оптикой. Теперь программная имитация этого приёма стала доступна пользователям смартфонов с двойной камерой. Оптика таких аппаратов позволяет электронике рассчитать примерную карту глубины резкости и наложить эффект размытия в соответствии с ней.


Так «думает» смартфон перед наложением эффекта (на схеме: темнее объект — сильнее размытие)

Конечно, алгоритмы имитации несколько уступают по реалистичности тому, что даёт серьёзная фототехника, но для подавляющего большинства аудитории это особого значения не имеет. Кроме того, в плане техники исполнения «двухкамерного» боке есть немалые успехи. Ещё недавно двойные камеры не могли даже толком определять границы объектов неправильной формы и некрасиво накладывали эффект, а сейчас многие двухобъективные смартфоны неплохо справляются даже с групповыми объектами, получая кадры почти без артефактов.

Конечно, всё-таки не каждый современный смартфон с двойной камерой в принципе поддерживает эффект боке, а если и поддерживает, то не всегда правильно его реализует. В одних девайсах спаренный фотомодуль используется только для зума, в других — исключительно для расширения динамического диапазона, а в бюджетных устройствах боке часто подменён спецэффектом tilt-shift, который беспощадно замыливает в кадре всё, что хоть немного ему покажется достойным размытия.

С Honor 8 Pro в этом плане проблем нет: в нём две камеры изначально предназначены для создания эффекта боке. Неплохие программные алгоритмы в компании оттачивают уже много лет — работающий боке был реализован ещё в Honor 6 Plus, который выпустили в 2019 году.

Передний план и силуэты

После того как вы освоили все технические тонкости, вы можете начинать использовать боке в ежедневной фотографической работе. Попробуйте получить боке на фоне изображения, которое имеет альтернативную точку фокуса на переднем плане, например, человека или предмет натюрморта.

Опять же, попытайтесь сделать так, чтобы между вашим объектом на переднем плане и огнями на заднем было максимально возможное расстояние. Еще довольно хорошо работает размещение силуэта перед вашими огоньками, аналогично объекту на переднем плане. Четкая черная форма будет хорошо контрастировать с мягким освещением на фоне.

Автор фотографии scuolafotografia

Бонус 1: Свет и тень

Наконец, я хотел бы добавить два небольших совета для успешных портретов. Попытайтесь найти хорошее освещение для вашего предмета. Попытайтесь найти источники мягкого света, которые создадут мягкие тени на вашем предмете. Это положит их в благоприятный свет, буквально. Хорошие варианты включают окно с непрямым светом или белую стену, отражающую солнечный свет. Фотографы используют мягкие ящики и т. п., Чтобы превратить их огромные световые стойки в тонкое свечение на лицах их сюжетных предметов.

Расположите свой предмет так, чтобы свет исходил примерно на 45 градусов со стороны. Благодаря полученной (мягкой!) тени ваша модель выглядит более гармонично на фотографии, как будто свет поступает прямо с фронта. Поэкспериментируйте здесь немного и сравните фотографии друг с другом.

Понятие “боке”

Боке означает интересное, красивое размытие кадра. Оно может быть похоже на туман, который располагается по краям фотографии или на заднем плане. Фон получается в нерезкости, при этом мы можем различить очертания цветных кругов, снежинок, звезд и других фигур на нем.

В итоге у вас и объект (человек) в центре внимания, так как ничто лишнее вокруг него взгляд зрителя не отвлекает, и изысканный фон, который, несомненно, оживляет кадр.

Боке – это достаточно простой способ сделать из простой фотографии конфетку!

Перейдем к тому, как сделать его с помощью вашей оптики.

Где и как применять?

Размытие «задника» хорошо работает при макросъёмке. Кстати, на одиночных камерах смартфонов с большой диафрагмой при фотографировании небольших объектов с близкого расстояния тоже можно получить такой эффект — достигается он в этом случае естественным путём только за счёт свойств оптики.

Заметим также, что подбор заднего плана, назначенного к размыванию — непростая творческая задача. В идеале фон должен стать органической частью композиции — для этого нужно учитывать тёмные пятна (визуально «утяжеляют» ту или иную часть фотографии) и выстраивать рисунок с теми же правилами композиции, как и фотографию в целом (например, не допускать «перевеса» только левой или правой части снимка).

Новичкам часто нравится эффект «кружочков» в боке. Добиться его можно, если применить размытие к фону со множеством мелких световых пятен. Это может быть ночная подсветка с сотнями маленьких лампочек вдали, пробивающиеся через листву дерева лучи света или ярко освещённые капли воды на каком-нибудь контрастном фоне. В Honor 8 Pro добиться такого эффекта ещё проще, так как при установке максимальной степени размытия фона (регулятор диафрагмы на значении f/0,95) ПО автоматически превращает наиболее яркие световые точки фона во множество красивых кругов.

Профи часто продумывают даже такие мелочи, как сочетание цветовых пятен в фоне с основным объектом в кадре. Причём делают это со знанием цветовых гармоний — правилами сочетания цвета, сродни тому, как из нот складываются аккорды.

Цветовой круг поможет вооружиться знаниями о простейших гармониях цвета (комплементарные, триада, аналогичное) и использовать их при построении собственных композиций.

Наконец, одно из самых важных применений двойной камеры с эффектом размытия фона — портретная съёмка. Двухобъективные смартфоны с программным эффектом боке способны размыть фон при съёмке человека по пояс, аппараты же с одинарным фотомодулем могут сделать боке в лучшем случае для руки с бокалом или цветком. Honor 8 Pro умеет снимать объекты с размытым фоном на расстоянии до двух метров.

Портреты с боке даже любительского качества, как уже сказано, имитируют реальное восприятие человеческого глаза. Ничего удивительного, что они нравятся нам куда больше, чем сколь угодно профессиональные снимки с чётким задним планом.

Контраст бликов

Также на характер зоны нерезкости влияет её контраст, особенно контраст перехода к светлому, после которого плавное размытие превращается в диск (или эллиптическое и/или многоугольное пятно). Размытые блики не улучшают восприятия фона и считается, что лучше меньше бликов «плохой» и «неправильной формы», а больше «правильных» круглых.


фото снято на Carl Zeiss Makro-Planar 50/[email protected]

Правильная форма дисков нерезкости

Это реалистичная карта дисков нерезкости реального объектива. Есть некоторая неравномерность освещенности дисков нерезкости и есть геометрическое виньетирование, но зато нет ХА. В целом — очень хороший объектив для съемки на открытой диафрагме.


Zeiss Planar 85/1.4 [email protected]

При постепенном прикрывании диафрагмы часто круги перестают быть кругами превращаясь в другие геометрические формы. Как правило, это плохо. Т.е. одно дело когда круг превращается в знаменитый «кошачий глаз», а другое когда в «циркулярную пилу».


диск нерезкости в форме диска циркулярной пилы. Снято на Zeiss Planar 85/1.4 [email protected]

Менее страшен оказывается многоугольник, хотя всегда лучше иметь более гармоничную округлую форму диска нерезкости.

Некоторые объективы, например, Carl Zeiss Planar 50/1.7 AE c/y сохраняют отверстие диафрагмы в форме лимона на большей части диафрагменных чисел (постепенно оно становится кругом).

Диски нерезкости в видео многоугольника очень распространенное явление т.к. производители фотографической оптики (в том числе и некоторые объективы Carl Zeiss) экономят на количестве лепестков диафрагмы объектива. Из-за этого как только начинаешь прикрывать диафрагму становится видно, что лепестков диафрагмы мало. С этим пытаются бороться скруглением лепестков диафрагмы, но полностью такой способ всё равно не исправляет форму отверстия на прикрытых диафрагмах.

Оптимальным считается количество лепестков диафрагмы 12шт, но такое в наше время встречается крайне редко. Один из примеров прошлых лет — Юпитер-9.


много лепестков диафрагмы (Юпитер—9)

Структура диска нерезкости

На недорогих объективах кроме неправильной формы дисков нерезкости может встречаться и их неоднородная структура.

Слева: чистые диски нерезкости, справа: диски нерезкости с включениями

Слева: видна грубая шлифовка линз, справа: видны включения в стекле

Возможно, вам будет интересно прочитать статью Откуда в старом фотообъективе берутся пузырьки? где написано про производство оптического стекла простым языком.

Теперь ваша очередь

Итак, теперь ваша очередь, все, что требуется – это ваша DSLR камера и набор маленьких источников света. Рождественские гирлянды (я знаю, что вы их только что убрали) работают великолепно. Уличные огни вдали также обеспечат вам тот эффект, которого вы хотите достичь.

Найдите время и место, чтобы попрактиковаться с выставлением верных настроек в камере, и когда вы почувствуете, что готовы, вы можете отправляться и начинать применять полученные навыки в вашей работе. Если вы не перестараетесь, боке может быть эффективно использовано для создания приятной мягкости и глубины в изображении без привлечения чрезмерного внимания. Это действительно может сделать ваши снимки лучше!

Автор фотографии BobAuBuchon

Автор статьи: Simon Bray.

DSLR Camera Effect Maker

Самое лаконичное в нашей подборке приложение. В нем, по сути, всего две опции: или размыть часть фото или оставить четкой часть фото. Эффект боке получается довольно красивый, но сделать его идеально можно только на простых формах, так как масштабирование здесь отсутствует. Можно менять толщину кисти, но этого часто бывает недостаточно. Также, можно изменять интенсивность размытия, но применяется эта настройка только ко всему снимку в целом, а не к отдельным его участкам. К слову, тестовое фото повело себя в приложении странно: перевернулось на 90゜без видимых на то причин.

Google Play

Диск нерезкости

Характеристики боке можно определить через диски нерезкости. Вне зоны фокуса, каждая светлая точка становится диском. С одним объективом этот диск оказывается светящимся равномерно, с другим — ярче по краям, с третьим — в центре. Часть объективов визуально приближают такие точки к камере, другие — отдаляют. Другими словами, диск с ярким центром и тёмными краями выглядит более мягким, чем равномерно освещённый или диск с яркими краями. Такой диск лучше сочетается с окружением, в то время как яркие края притягивают к себе внимание, отвлекая от основного объекта.


диски нерезкости Carl Zeiss Planar 85/1.4 c/y

Идеальный случай

Черный прямоугольник — это матрица камеры. Круги — это диски нерезкости. Круг покрытия объектива немного больше площади матрицы. Диски нерезкости абсолютно круглые даже по краю кадра и равномерно освещены. Нет и прочих аберраций. Такого объектива не существует.

Объектив с хроматическими аберрациями

Диски нерезкости всё еще круглые даже по краю кадра и равномерно освещены, но появились цветные каёмки — хроматические аберрации.

Объектив с геометрическим виньетированием

Ниже будет описано влияние геометрического виньетирования на боке.

Томаш Гудзоватый «Сумо. Аре-буре-боке»

В экспозиции представлены новые работы Гудзоватого, в которых мастер стройного взвешенного кадра предстает с неожиданной стороны. Художник характеризует свой метод следующим образом:

«Я уничтожил свою работу, результат многолетней подготовки. Я убил детали в своих фотографиях, разорвал их, выжег. Подробности рассеивают взгляд, отвлекают внимание от более глубоких слоев. В сумо я будто убиваю себя, отказываюсь от индивидуальности, от своего перфекционизма в представлении материала, потому как боюсь, что замечен будет только верхний слой. Я боюсь, что показываю красивую коробочку, которую никто не открывает. То, о чем я хочу рассказать, для меня слишком важно, чтобы я мог позволить себе ошибку или недосказанность».

Эти слова необычны для фотографа, чей выразительный узнаваемый стиль ассоциируется с идеально поставленными, выверенными, продуманными до последней детали кадрами. Но такой подход к сумо — национальному японскому спорту, погруженному в традиционную культуру страны, ритуализированному и связанному с сакральной сферой, — кажется вполне естественным. Томаш Гудзоватый раскрывает эту тему, используя провокационную эстетику «аре-буре-боке». Его вдохновляют работы фотографов, связанных с экспериментальным японским журналом Provoke (Purovōku, プロヴォーク), который был основан в 1968 году.

Provoke стал отправной точкой для распространения нового стиля, которому присуща экспрессия и стремление к освобождению фотографии от подчинения вербальному языку. «Визуальные образы не могут представлять идеи так же полно, как слова, — говорится в манифесте группы, основавшей журнал, — но фотографии могут стимулировать язык и идеи, создавая новый язык и новые значения». Фотограф может уловить то, что не может быть выражено словами, представляя фотографии как «документы», читаемые другими, — отсюда подзаголовок журнала: «Провокативные материалы для размышлений». Томаш Гудзоватый говорит об этом так:

«В Provoke форма сведена к нулю, осталось одно содержание. Именно это послужило вдохновением для демонстрации сумо как символа того, что я увидел, работая над этой темой. В сумо фотографии мчатся, но и бледнеют, будто исчезают. Это подчеркивает то, что необходимо спешить и дорабатывать детали, заново дополнять то, что смылось, отпало под влиянием времени и перемен. […] Я бы хотел сломать представление о сумо как о стабильной и непрерывной традиции. Сдвинуть с места эту глыбу. Показать, что сумо живет, меняется, только мы не хотим принять этого к сведению. Легче идеализировать традицию и не отрицать ее пластичности, чем принять изменения, необходимые для ее сохранения».

Томаш Гудзоватый (р. 1971, Варшава) — польский фотохудожник и документальный фотограф. В фокусе внимания фотографа — спорт, дикая природа и социальная проблематика. Большинство его репортажных проектов состоят из двенадцати черно-белых изображений. В своем подходе сочетает интерес к метафизике спорта с глубокой осведомленностью в социальных вопросах. Среди художников, которые оказали на него наибольшее влияние, он часто называет Себастьяна Сальгадо. В 2009 году фотографии Гудзоватого демонстрировались на фотографическом фестивале в Арле в рамках групповой выставки «Ça me touche», куратором которой выступила Нан Голдин. В качестве спортивного фотожурналиста работал на Параолимпийских играх в Афинах и в Сиднее.

Работы публиковались в журналах Cartier Art, Max, L’Equipe, The Guardian, Newsweek, Forbes, National Geographic Travel, Time, Photo, British Journal of Photography, Spook, Vogue Italia, L’Uomo Vogue и других). Автор десяти фотокниг, в том числе опубликованных такими издательствами, как Hatje Cantz и Steidl. Многократный лауреат и финалист крупных международных конкурсов: World Press Photo (девять премий), Pictures of the Year International, NPPA’s Best of Photojournalism, International Photography Awards, B&W Spider Awards, а также National Portrait Gallery’s Taylor Wessing Photographic Portrait Prize.В качестве научного сотрудника и преподавателя был приглашен на факультет Кшиштофа Кесьлевского Силезского университета радио и телевидения в Катовице, где в 2018 году получил докторскую степень в области искусств.

Что такое боке в фотоаппарате? | Мир Фото, Камер

Боке – это “характер” изображения вне зоны фокусировки, его интенсивность, влияние на общий снимок. Грубо говоря, это то, как размыто изображение вне зоны фокусировки. Термин “размыто” не совсем технический, но как можно больше подходит для описания того, что происходит с изображением не в зоне фокусировки. Изображение “размывается” как будто художник взял и перемешал краски.
Источник: howtogettheguy.com

Источник: howtogettheguy.com

  • При фокусировке камера делает резким только те объекты, на которых сфокусировался объектив . Все остальные объекты в кадре становятся не резкими. При чем, объекты могут быть очень сильно размыты , или размыты всего чуть-чуть. Обычно, на снимке четко видно зону, в которой объекты резкие. Такую зону можно измерить в ширину (глубину).
Источник: darwin.md

Источник: darwin.md

За ширину этой зоны отвечает ГРИП объективаГлубина Резко Изображаемого Пространства. Английский аналог DOF. Боке связано напрямую с зоной нерезкости, которая является обратной стороной ГРИП. Потому, влияя на ГРИП, можно объективно повлиять и на боке.

Параметры отвечающие за интенсивность боке:
  1. Фокусное расстояние объектива . Чем больше фокусное расстояние объектива – тем проще добиться размытия заднего фона, увеличить степень размытия.
  2. Светосила объектива . Чем больше относительное отверстие (чем меньше число F), тем проще можно добиться сильного размытия изображения в не зоне резкости и увеличить кружочки нерезкости вне зоны ГРИП.
  3. Вид отверстия диафрагмы . Обычно, диафрагма при закрытии не может оставаться такой же круглой, как при полностью открытом состоянии. Это связано с ограниченным количеством лепестков диафрагмы. При закрытых диафрагмах вместо дисков (кружочков, кругляшков) в зоне нерезкости появляются многоугольные фигуры.
  4. Дистанция фокусировки . Чем ближе положения фокусера к МДФ (минимальной дистанции фокусировки), тем сильней будет размытие. Потому, даже на “темный” объектив можно получить хорошее  размытие, снимая предметы крупным планом, когда объектив сфокусирован настолько близко, насколько это возможно. Проведите эксперимент, возьмите свой китовый объектив (либо, любой другой), отключите автоматическую фокусировку, установите МДФ и попытайтесь снять какую либо мелочь, например, вазон, чашку чая. Потом посмотрите на зону нерезкости, она будет сильно размыта.
  5. Оптическая схема объектив а, которая, собственно и формирует необычный узор для каждого объектива в отдельности. Лично я считаю хорошей оптической схемой с приятным боке, схему типа Sonnar. Но сейчас просто море других хороших объективов с непонятными многолинзовыми схемами и приятным боке. Оптическая схема некоторых объективов, например, таких как Nikon AF DC-Nikkor 105mm 1:2 D Defocus Image Control , имеет специальное кольцо для контроля боке.
  6. Косвенно влияет размер матрицы . Просто, с одним и тем же объективом для одной и той же композиции (компоновки кадра) с разной величиной матрицы будет разная дистанция фокусировки, потому, и интенсивность размытия выше. Более детально в разделе про Кроп-Фактор .
  7. Задний и передний план. Очень важно, чтобы было понимание, что рисунок размытия зависит от того, что будет размываться . Яркие одиночные источники света обычно превращаются в светящиеся диски, а однородный фон в мягкую пластичную кашу.
Источник: binar-shop.ru

Источник: binar-shop.ru

Виды боке.

Обычно, в западной литературе выделяют два типа боке : голливудское (Hollywood Style Bokeh) и кремовое боке (Creamcheese Bokeh).

1) Голливудское боке (Hollywood Style Bokeh) – боке, в котором ярко выражены светящиеся кружочки (диски) в зоне нерезкости. При чем, это могут быть и не кружочки, а прямоугольники, звëздочки, все, что угодно . Почему голливудское? Потому, что в голливудских фильмах очень много снято вечерних и ночных сцен в таком стиле боке. Например, в фильме “Крепкий орешек” на 01:05:00 и во всем фильме диски нерезкости имеют очень сильно вытянутую вертикальную эллипсоидную форму. Вообще, просто сходите в кинотеатр и понаблюдайте за зоной нерезкости, найдете для себя очень много полезных выводов.

Источник: demo.qodeinteractive.com

Источник: demo.qodeinteractive.com

2) Кремовое бокев отличие от голливудского, призвано делать размытие настоящим “размытым” методом, без ярких разнообразных кругляшков. Про этом размытие становится по консистенции как крем. Я всегда вспоминаю сладкие эклеры, когда думаю про кремовое боке. Кремового боке достичь достаточно сложно, потому, что все точки в зоне нерезкости пытаются превратиться на снимке в светящиеся диски. Единицы объективов могут производить настоящее кремовое боке. Собственно, пример такого боке ниже.

Источник: badfon.ru

Источник: badfon.ru

Боке играет огромную роль в макрофотографии и портретной фотосъëмке.

Боке очень важно для макро фотографии, так как там почти всегда идëт съëмка на пределах возможности объектива и очень маленькая МДФ, то ГРИП тоже, очень маленькая, а значит интенсивность боке очень высокая.

Боке для портрета – это целая отдельная наука. В основном, все сводится к тому, чтобы не уделять акцент заднему фону, а выделять лишь только сам портрет человека. Понаблюдайте за художником. Я недавно видел, как рисует художник мой портрет, он на своем холсте рисовал только мое лицо и плечи, совсем не уделяя внимания внешней обстановке. А ведь я сидел на фоне пëстрой растительности парка. В итоге на холсте получился только мой плечевой портрет без каких-то лишних деталей. Художник только слегка растушёвывал карандаш на белом листе для придания объема. Собственно, фотографы с помощью “правильного” боке стараются выделить только самого человека, а все лишние “растушевать, превратить в кашу, кисель”. Ниже приведен портрет, на котором боке имеет яркий голливудский стиль, и акцентирует часть внимания зрителя именно на пëстром контрастном фоне кругляшков. В то же время, контрастные диски нерезкости добавляют свою изюминку в снимок.

Источник: goodfon.ru

Источник: goodfon.ru

Погоня за боке.

Многие люди покупают зеркальные камеры ради того, чтобы делать фотографии с красивым боке. Часто всё фотографирование останавливается на фотографировании “кругляшков” и интерес к фотографии угасает. Я не рекомендую очень сильно гонятся за боке. Да, боке должно соответствовать Вашему вкусу, но оно не должно быть главным на Вашей фотографии. Я очень часто руководствуюсь одним правилом: если на фотографии Вы смотрите только на боке – значит фотография неудачная . Боке, это своего рода та сторона медали, которую никто не должен видеть. Я снимаю достаточно много, и ещë ни один клиент мне не задал вопрос про боке, ни высказался за его “красоту” или “кремовость”. Похвала всегда выражается словами на подобие “ух как красиво, необычно”. Люди (не фотографы) смотрят на снимок, на себя на снимке, для них важней совсем другие ценности, а боке остаëтся лишь методом для фотографа, нашей маленькой тайной и панацеей.

-Некоторые материалы были взяты из этого источника-

Источник: wallpapercave.com

Источник: wallpapercave.com

Спасибо за внимание!

Визуальные атрибуты стилизации — Bokeh 2.4.1 Документация

Использование тем

Темы

Bokeh — это набор заранее определенных параметров дизайна, которые вы можете применить к ваши сюжеты. Темы могут включать настройки таких параметров, как цвета, шрифты, или стили линий.

Применение встроенных тем боке

Bokeh поставляется с пятью встроенными темами, которые можно быстро изменить внешний вид одного или нескольких участков: калибр , dark_minimal , light_minimal , night_sky и контраст .

Чтобы использовать одну из встроенных тем, назначьте название темы, которую вы хотите использовать. в свойство темы вашего документа.

Например:

 из bokeh.io import curdoc
from bokeh.plotting import figure, output_file, show

x = [1, 2, 3, 4, 5]
y = [6, 7, 6, 4, 5]

выходной_файл ("dark_minimal.html")

curdoc (). theme = 'dark_minimal'

p = фигура (title = 'dark_minimal', ширина = 300, высота = 300)
p.line (x, y)

показать (p)
 

Для получения дополнительных примеров и подробной информации см. боке.темы .

Создание собственных тем

Темы в боке определены в файлах YAML или JSON. Чтобы создать свою собственную тему файлы, следуйте формату, определенному в bokeh.themes.Theme .

Используя YAML, например:

 атрибутов:
    Фигура:
        background_fill_color: '# 2F2F2F'
        border_fill_color: '# 2F2F2F'
        Outline_line_color: '# 444444'
    Ось:
        цвет_оси_линии: !! нуль
    Сетка:
        grid_line_dash: [6, 4]
        grid_line_alpha:.3
    Заголовок:
        text_color: "белый"
 

Чтобы использовать собственную тему в графике боке, загрузите файл YAML или JSON в bokeh.themes Тема объект:

 из bokeh.themes import Theme
curdoc (). theme = Theme (filename = "./ theme.yml")
 

Использование палитр

Палитры - это последовательности шестнадцатеричных строк RGB (A), которые определяют цветовую карту. В последовательности, которые вы используете для определения цветовых карт, могут быть списками или кортежами. Однажды ты создали цветовую карту, вы можете использовать ее с атрибутом цвета многих сюжетные объекты из боке.заговор.

Bokeh включает несколько предустановленных палитр, например стандартную палитру Брюера. палитры. Чтобы использовать одну из этих предопределенных палитр, импортируйте ее из боке. Палитры модуль. Например, когда вы импортируете «Spectral6», боке дает вы получаете доступ к шестиэлементному списку шестнадцатеричных строк RGB (A) из Brewer Цветовая карта «Spectral»:

 >>> из bokeh.palettes import Spectral6
>>> Spectral6
['# 3288bd', '# 99d594', '# e6f598', '# fee08b', '# fc8d59', '# d53e4f']
 

Список всех стандартных палитр, включенных в боке, см. боке.палитры.

Вы также можете создавать собственные палитры, определяя последовательность шестнадцатеричных значений RGB (A). струны сами.

Использование картографов

Используйте преобразователи цвета Bokeh для кодирования последовательности данных в палитру цветов. которые основаны на значениях в этой последовательности. Затем вы можете установить маркер Атрибут цвета объекта в вашем цветовом картографе. Боке включает несколько видов мапперов для кодирования цветов:

  • factor_cmap () : отображает цвета на определенные категориальные элементы.Дополнительные сведения см. В разделе «Обработка категориальных данных».

  • linear_cmap () : отображает диапазон числовых значений в доступные цвета от высокого до низкого. Например, диапазон [0,99] с учетом цвета [«красный», «зеленый», «синий»] будут сопоставлены следующим образом:

     x <0: 'красный' # значения  = x <33: 'красный'
    33> = x <66: 'зеленый'
    66> = x <99: 'синий'
    99> = x: 'blue' # значения> high фиксируются
     
  • log_cmap () : аналогично linear_cmap , но использует естественный шкала журнала для отображения цветов.

Эти функции отображения возвращают свойство DataSpec . Передайте это свойство в атрибут цвета глифа, с которым вы хотите его использовать.

Спецификация данных, возвращаемая функцией сопоставления, включает bokeh.transform . Вы можете получить доступ к этим данным, чтобы использовать результат функции сопоставления в другом контекст. Чтобы создать ColorBar , например:

 из bokeh.models import ColorBar, ColumnDataSource
из bokeh.palettes import Spectral6
из боке.построение рисунка импорта, output_file, show
из bokeh.transform import linear_cmap

output_file ("styling_linear_mappers.html", title = "пример style_linear_mappers.py")

x = [1,2,3,4,5,7,8,9,10]
y = [1,2,3,4,5,7,8,9,10]

# Используйте имя поля источника столбца
mapper = linear_cmap (field_name = 'y', palette = Spectral6, low = min (y), high = max (y))

источник = ColumnDataSource (dict (x = x, y = y))

p = рисунок (ширина = 300, высота = 300, title = "Линейная цветовая карта на основе Y")

p.circle (x = 'x', y = 'y', line_color = mapper, color = mapper, fill_alpha = 1, size = 12, source = source)

color_bar = ColorBar (color_mapper = mapper ['преобразование'], ширина = 8)

п.add_layout (color_bar, 'вправо')

показать (p)
 

Настройка визуальных свойств

Чтобы стилизовать визуальные атрибуты графиков боке, вам нужно знать, что доступные свойства есть. Полный справочник содержит все свойства каждый объект индивидуально. Однако есть три группы свойств, которые у многих объектов есть что-то общее. Их:

  • свойства линии : цвет, ширина линии и т. Д.

  • свойства заливки : цвет заливки, альфа и т. Д.

  • свойства текста : стили шрифтов, цвета и т. Д.

В этом разделе содержится более подробная информация о некоторых наиболее распространенных свойствах.

Линия недвижимости

line_color

цвет для обводки линий с

line_width

ширина линии в пикселях

line_alpha

с плавающей точкой между 0 (прозрачный) и 1 (непрозрачный)

line_join

как сегменты пути должны быть соединены вместе

line_cap

как должны завершаться сегменты пути

line_dash

стиль линии для использования

  • цельный

  • штриховая

  • пунктирная

  • точка, точка

  • дашдот

  • массив целочисленных расстояний между пикселями, которые описывают схему включения-выключения рывка для использования

  • строка целых чисел с интервалом, соответствующая регулярному выражению ‘^ (\ d + (\ s + \ d +) *)? $’ которые описывают схему включения-выключения рывка, чтобы использовать

line_dash_offset

расстояние в пикселях до line_dash , на котором узор должен начинаться с

Свойства заливки

fill_color

цвет для заливки контуров с помощью

fill_alpha

с плавающей точкой между 0 (прозрачный) и 1 (непрозрачный)

Люк

hatch_color

цвет для обводки образцов штриховки с

hatch_alpha

с плавающей точкой между 0 (прозрачный) и 1 (непрозрачный)

hatch_weight

ширина линии в пикселях

hatch_scale

грубая мера «размера» выкройки.Это значение имеет другое конкретные значения в зависимости от узора.

hatch_pattern

имя строки (или сокращение) для встроенного шаблона или имя строки шаблона, представленного в hatch_extra . Встроенные шаблоны:

Встроенные образцы штриховки

FullName

Аббревиатура

Пример

пустой

""

точек

"."

кольцо

"о"

horizontal_line

"-"

vertical_line

"|"

крест

"+"

горизонтальная черта

''

вертикальная черта

":"

спираль

@

правая_диагональная_линия

"/

left_diagonal_line

"\\"

диагональ_кросс

"x"

правая_диагональная черта

","

left_diagonal_dash

""

горизонтальная волна

"v"

vertical_wave

">"

criss_cross

"*"

hatch_extra

a dict, отображающий имена строк для пользовательских реализаций шаблонов.Имя можно обозначить по hatch_pattern . Например, если следующее значение устанавливается для hatch_extra :

 hatch_extra = {'mycustom': ImageURLTexture (url = ...)}
 

, то имя "mycustom" может быть установлено как hatch_pattern .

Свойства текста

text_font

имя шрифта, например, 'times' , 'helvetica'

text_font_size

размер шрифта в пикселей , em или pt , e.г., '16px' , '1.5em'

text_font_style

используемый стиль шрифта

  • 'обычный' обычный текст

  • курсив курсив

  • полужирный полужирный

text_color

цвет для визуализации текста с

text_alpha

с плавающей точкой между 0 (прозрачный) и 1 (непрозрачный)

text_align

горизонтальная точка привязки для текста: 'слева' , 'справа' , 'по центру'

text_baseline

вертикальная точка привязки для текста

  • 'верх'

  • 'средний'

  • нижний

  • 'алфавитный'

  • «подвешивание»

Примечание

В настоящее время поддерживается только заполнение текста.Интерфейс для обводки контуры текста еще не обнажены.

Видимая собственность

Средства визуализации глифов, оси, сетки и аннотации имеют свойство visible . Используйте это свойство, чтобы включать и выключать их.

 из bokeh.io import output_file, show
из bokeh.plotting импортная фигура

# Устанавливаем стандартную фигуру с двумя линиями
p = фигура (ширина = 500, высота = 200, инструменты = '')
visible_line = p.line ([1, 2, 3], [1, 2, 1], line_color = "синий")
invisible_line = стр.line ([1, 2, 3], [2, 1, 2], line_color = "розовый")

# Мы скрываем ось x, линии xgrid и розовую линию
invisible_line.visible = Ложь
p.xaxis.visible = Ложь
p.xgrid.visible = Ложь

output_file ("styling_visible_property.html")

показать (p)
 

Это может быть особенно полезно в интерактивных примерах с сервером Bokeh или CustomJS.

 из bokeh.io import output_file, show
из bokeh.layouts импортировать макет
from bokeh.models импортировать BoxAnnotation, Toggle
из bokeh.plotting импортная фигура

output_file ("стиль_видимой_аннотации_with_interaction.html ")

p = фигура (ширина = 600, высота = 200, инструменты = '')
p.line ([1, 2, 3], [1, 2, 1], line_color = "синий")
pink_line = p.line ([1, 2, 3], [2, 1, 2], line_color = "розовый")

green_box = BoxAnnotation (слева = 1,5, справа = 2,5, fill_color = 'зеленый', fill_alpha = 0,1)
p.add_layout (green_box)

# Используйте js_link для соединения активного свойства кнопки с видимым свойством глифа

toggle1 = Toggle (label = "Зеленый ящик", button_type = "success", active = True)
toggle1.js_link ('активный', green_box, 'видимый')

toggle2 = Toggle (label = "Розовая линия", button_type = "success", active = True)
toggle2.js_link ('активный', pink_line, 'видимый')

показать (макет ([p], [toggle1, toggle2]))
 

Свойства цвета

Объекты боке имеют несколько свойств, связанных с цветами. Используйте этот цвет например, для управления внешним видом линий, заливок или текста.

Используйте одну из следующих опций, чтобы определить цвета в боке:

  • Любой из названных цветов CSS, например «зеленый» или «индиго» . Вы можете также используйте дополнительное имя 'transparent' (равно '# 00000000' ).

  • Шестнадцатеричное значение RGB (A), например '# FF0000' (без альфа-информации) или '# 44444444' (с альфа-информацией).

  • A CSS4 rgb () , rgba () или hsl () цветная строка, например 'rgb (0 127 0 / 1.0)' , 'rgba (255, 0, 127, 0,6)' , или 'hsl (60 градусов 100% 50% / 1,0)' .

  • Набор из трех целых чисел (r, g, b) (где r , g и b - целые числа от 0 до 255).

  • 4-кортеж из (r, g, b, a) (где r , g и b - целые числа от 0 255 и , - это значение с плавающей запятой от 0 до 1).

  • 32-битное целое число без знака, представляющее значения RGBA в 0xRRGGBBAA Шаблон порядка байтов, например 0xffff00ff или 0xff0000ff .

Чтобы определить серию цветов, используйте массив данных о цвете, например список или столбец ColumnDataSource.Это также включает Массивы NumPy.

Например:

 импортировать numpy как np

from bokeh.plotting import figure, output_file, show

выходной_файл ("указывающий_колор.html")

х = [1, 2, 3]
y1 = [1, 4, 2]
y2 = [2, 1, 4]
y3 = [4, 3, 2]

# использовать один цвет RGBA
одиночный_цвет = (255, 0, 0, 0,5)

# использовать список разных цветов
list_of_colors = [
    "HSL (60 градусов 100% 50% / 1,0)",
    "rgba (0, 0, 255, 0.9)",
    "LightSeaGreen",
]

# использовать серию значений цвета как массив numpy
numpy_array_of_colors = нп.множество(
    [
        0xFFFF00FF,
        0x00FF00FF,
        0xFF000088,
    ],
    np.uint32,
)

p = рисунок (title = "Определение цветов")

# добавляем глифы на график
p.line (x, y1, line_color = single_color)
p.circle (x, y2, радиус = 0,12, цвет = list_of_colors)
p.triangle (x, y3, size = 30, fill_color = numpy_array_of_colors)

показать (p)
 

В дополнение к указанию альфа-значения цвета при определении цвета сам, вы также можете установить альфа-значение отдельно, используя line_alpha или fill_alpha свойства глифа.

Если вы определяете цвет с альфа-значением, а также явно предоставляете значение альфа через свойство line_alpha или fill_alpha одновременно время происходит следующее: Если ваше определение цвета действительно включает альфа-канал значение (например, '# 00FF0044' или 'rgba (255, 0, 127, 0.6)' ), эта альфа значение имеет приоритет над альфа-значением, которое вы предоставляете через объекты имущество. В противном случае используется значение альфа, определенное в свойстве объекта.

На следующем рисунке показаны все возможные комбинации использования RGB и Цвета RGBA вместе со свойствами line_alpha или fill_alpha :

Примечание

Если вы используете Графический интерфейс Bokeh, вы также есть возможность указать цвет и / или альфа в качестве ключевых слов, когда вызов метода рендеринга. Боке автоматически применяет эти значения к соответствующие заполните и строку свойств ваших глифов.

У вас все еще есть возможность указать дополнительные fill_color , Также аргументы fill_alpha , line_color и line_alpha . В В этом случае первое имеет приоритет.

Блоки экрана и блоки пространства данных

При настройке визуальных свойств объектов Bokeh вы используете либо экранные единицы, либо единиц пространства данных:

Возьмите график размером 400 на 400 пикселей с осями x и y в диапазоне от 0 через 10, например.Глиф в пятую часть ширины и высоты графика. будет иметь размер 80 экранных единиц или 2 единицы пространства данных.

Объекты в боке, которые обычно поддерживают как экранные единицы, так и единицы пространства данных есть специальное свойство, чтобы выбрать, какую единицу использовать. Этот блок-постановка property - это имя свойства с добавленными _units . Для Например: A Whisker аннотация имеет свойство верхний . К определите, какую единицу использовать, установите для свойства upper_units либо «экран» или «данные» .

Выбор сюжетных объектов

Если вы хотите настроить внешний вид любого элемента вашего графика боке, вы Сначала необходимо определить, какой объект вы хотите изменить. Как описано в Определяя ключевые концепции, графики боке представляют собой комбинацию объектов Python, которые представляют все различные части вашего сюжета: его сетки, оси и глифы, для пример.

У некоторых объектов есть удобные методы, которые помогут вам идентифицировать нужные вам объекты. адресовать. См. Разделы «Оси стилей», «Сетки стилей» и «Легенды стилей». Примеры.

Для запроса любого графического объекта Bokeh используйте метод select () на Plot . Для Например, чтобы найти все объекты PanTool на графике:

 >>> p.select (type = PanTool)
[]
 

Вы также можете использовать метод select () для запроса и по другим атрибутам:

 >>> p.circle (0, 0, name = "mycircle")


>>> стр.выберите (name = "mycircle")
[]
 

Этот метод запроса может быть особенно полезен, если вы хотите стилизовать визуальный атрибуты стилизованных глифов.

Укладка участков

В дополнение к отдельным элементам графика сам объект Plot также имеет несколько визуальных характеристик, которые вы можете настроить: размеры сюжет, его фон, границы или очертания, например. В этом разделе описывается как изменить эти атрибуты графика боке.

Код примера в основном использует интерфейс bokeh.plotting для создания графиков. Однако инструкции применимы независимо от того, как был создан график боке.

Размеры

Чтобы изменить ширину и высоту Plot , используйте его width и высота атрибутов. Эти два атрибута используют экранные единицы. Они контролировать размер всей области холста, включая любые оси или заголовки (но не панель инструментов).

Если вы используете боке.графического интерфейса, вы можете передать эти значения в цифра () напрямую:

 из bokeh.plotting import figure, output_file, show

выходной_файл ("размеры.html")

# создать новый участок с определенными размерами
p = цифра (ширина = 700)
p.height = 300

p.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 10)

показать (p)
 

Адаптивные размеры

Для автоматической регулировки ширины или высоты вашего участка относительно свободного места в браузере, используйте график sizing_mode свойство.

Чтобы управлять масштабированием графика для заполнения контейнера, см. Документацию для макеты, в частности свойство sizing_mode для Макет ДОМ .

Если вы установите sizing_mode на любое значение, отличное от fixed , Bokeh настраивается ширина и высота , как только график визуализируется. Тем не мение, Боке использует ширину и высоту для расчета начального аспекта. соотношение вашего сюжета.

Графики будут уменьшаться только до минимального значения 100 пикселей (высота или ширина), чтобы предотвратить проблемы с отображением вашего сюжета.

Название

Чтобы стилизовать заголовок вашего участка, используйте аннотацию Title , которая доступна как собственность .title участка .

Вы можете использовать большинство стандартных свойств текста. Однако text_align и text_baseline не применяются. Позиционировать заголовок относительно всего построить, используйте свойства , выровняйте и вместо этого смещает .

В качестве примера, чтобы установить цвет и стиль шрифта текста заголовка, используйте участок.title.text_color :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("title.html")

p = рисунок (ширина = 400, высота = 400, title = "Some Title")
p.title.text_color = "оливковый"
p.title.text_font = "раз"
p.title.text_font_style = "курсив"

p.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 10)

показать (p)
 

Фон

Чтобы изменить стиль заливки фона, настройте background_fill_color и background_fill_alpha Свойства объекта Plot :

 из боке.построение рисунка импорта, output_file, show

output_file ("background.html")

p = цифра (ширина = 400, высота = 400)
p.background_fill_color = "бежевый"
p.background_fill_alpha = 0,5

p.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 10)

показать (p)
 

Граница

Чтобы настроить стиль заливки границы, используйте border_fill_color и border_fill_alpha свойства объекта Plot . Вы также можете установить минимальная граница с каждой стороны (в единицах экрана) со следующими свойствами:

  • min_border_left

  • min_border_right

  • min_border_top

  • min_border_bottom

Кроме того, если вы установите min_border , Bokeh применяет минимальную настройку границы со всех сторон для удобства.Значение по умолчанию min_border - 40 пикселей.

 из bokeh.plotting import figure, output_file, show

выходной_файл ("border.html")

p = цифра (ширина = 400, высота = 400)
p.border_fill_color = "белый дым"
p.min_border_left = 80

p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

показать (p)
 

Наброски

Bokeh Plot Объекты имеют различные свойства линий. Чтобы изменить внешний вид outlines, используйте те свойства линии, которые имеют префикс outline_ .

Например, чтобы установить цвет контура, используйте outline_line_color :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("схема.html")

p = цифра (ширина = 400, высота = 400)
p.outline_line_width = 7
p.outline_line_alpha = 0,3
p.outline_line_color = "темно-синий"

p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

показать (p)
 

Стилизация глифов

Чтобы стилизовать свойства заливки, линии или текста глифа, сначала необходимо определите, какой GlyphRenderer вы хотите настроить.Если вы используете bokeh.plotting, функции глифов возвращают средство визуализации:

 >>> r = p.circle ([1,2,3,4,5], [2,5,8,2,7])
>>> г

 

Затем получите сам глиф из атрибута .glyph объекта GlyphRenderer :

 >>> r. Глиф

 

Это объект, для которого задаются значения свойств заливки, линии или текста:

 из боке.построение рисунка импорта, output_file, show

выходной_файл ("оси.html")

p = цифра (ширина = 400, высота = 400)
r = p.circle ([1,2,3,4,5], [2,5,8,2,7])

глиф = r. глиф
glyph.size = 60
glyph.fill_alpha = 0,2
glyph.line_color = "огнеупорный кирпич"
glyph.line_dash = [6, 3]
glyph.line_width = 2

показать (p)
 

Выбранные и невыделенные глифы

Чтобы настроить стиль выбранных и невыбранных глифов, установите selection_glyph и nonselection_glyph атрибутов GlyphRenderer .Вы можете установить их вручную или передать их add_glyph () .

На графике ниже для установки этих атрибутов используется интерфейс bokeh.plotting. Щелкните или коснитесь любого кружка на графике, чтобы увидеть эффект на выбранном и невыбранные глифы. Чтобы очистить выделение и восстановить исходное состояние, щелкните в любом месте графика за пределами круга.

 из bokeh.io import output_file, show
из bokeh.models import Circle
из bokeh.plotting импортная фигура

output_file ("style_selections.html ")

plot = figure (width = 400, height = 400, tools = "tap", title = "Выберите круг")
renderer = plot.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 50)

selected_circle = Круг (fill_alpha = 1, fill_color = "firebrick", line_color = None)
nonselected_circle = Круг (fill_alpha = 0,2, fill_color = "синий", line_color = "огнеупорный кирпич")

renderer.selection_glyph = selected_circle
renderer.nonselection_glyph = nonselected_circle

шоу (сюжет)
 

Если вам просто нужно установить цвет или альфа-параметры выбранного или невыбранные глифы, укажите цвет и альфа-аргументы функции глифа, с префиксом "selection_" или "nonselection_" :

 из боке.io import output_file, показать
из bokeh.plotting импортная фигура

выходной_файл ("style_selections.html")

plot = figure (width = 400, height = 400, tools = "tap", title = "Выберите круг")
renderer = plot.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 50,

                       # установить визуальные свойства для выбранных глифов
                       selection_color = "огнеупорный кирпич",

                       # установить визуальные свойства для невыбранных глифов
                       nonselection_fill_alpha = 0,2,
                       nonselection_fill_color = "синий",
                       nonselection_line_color = "огнеупорный кирпич",
                       nonselection_line_alpha = 1.0)

шоу (сюжет)
 

Если вы используете интерфейс bokeh.models, используйте add_glyph () функция:

 p = участок ()
источник = ColumnDataSource (dict (x = [1, 2, 3], y = [1, 2, 3]))

initial_circle = Круг (x = 'x', y = 'y', fill_color = 'blue', size = 50)
selected_circle = Круг (fill_alpha = 1, fill_color = "firebrick", line_color = None)
nonselected_circle = Круг (fill_alpha = 0,2, fill_color = "синий", line_color = "огнеупорный кирпич")

p.add_glyph (источник,
            initial_circle,
            selection_glyph = выбранный_круг,
            nonselection_glyph = nonselected_circle)
 

Примечание

При рендеринге Боке учитывает только визуальных свойств selection_glyph и nonselection_glyph .Изменение позиции, размеры и т. д. не будут иметь никакого эффекта.

Осмотр при зависании

Чтобы стилизовать внешний вид глифов, над которыми наведен курсор, передайте цвет или альфа-канал. параметры с префиксом "hover_" для вашей функции рендеринга.

В качестве альтернативы установите атрибуты selection_glyph и nonselection_glyph для GlyphRenderer , как и в Выбранные и невыделенные глифы выше.

В этом примере используется первый метод передачи параметра цвета с "hover_" префикс:

 из боке.импорт моделей HoverTool
from bokeh.plotting import figure, output_file, show
из bokeh.sampledata.gluosis data import data

output_file ("styling_hover.html")

subset = data.loc ['2010-10-06']

x, y = subset.index.to_series (), subset ['глюкоза']

# Базовая настройка сюжета
plot = figure (width = 600, height = 300, x_axis_type = "datetime", tools = "",
              toolbar_location = Нет, title = 'Наведите указатель мыши на точки')

plot.line (x, y, line_dash = "4 4", line_width = 1, color = 'gray')

cr = plot.circle (x, y, size = 20,
                fill_color = "серый", hover_fill_color = "огнеупорный кирпич",
                fill_alpha = 0.05, hover_alpha = 0,3,
                line_color = Нет, hover_line_color = "белый")

plot.add_tools (HoverTool (tooltips = None, renderers = [cr], mode = 'hline'))

шоу (сюжет)
 

Примечание

При рендеринге Боке учитывает только визуальных свойств hover_glyph . Изменение положения, размеров и т. Д. Не повлияет.

Оси для укладки

Этот раздел посвящен изменению различных визуальных свойств осей графика боке.

Чтобы установить атрибуты стиля для объектов Axis, используйте xaxis , yaxis и axis методы на Plot , чтобы сначала получить объекты Axis графика.Например:

 >>> ось оси
[]
 

Поскольку может быть более одной оси, этот метод возвращает список осей объекты. Однако для удобства эти списки разделяются на . Это означает, что вы можете установить атрибуты непосредственно на этом результате, и атрибуты будут применяется ко всем осям в списке. Например:

 p.xaxis.axis_label = "Температура"
 

Это изменяет значение axis_label для каждой оси x p , однако их может быть много.

Пример ниже демонстрирует использование осей xaxis , yaxis и ось методы более подробно:

 из bokeh.plotting import figure, output_file, show

выходной_файл ("оси.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

# изменим кое-что об оси x
p.xaxis.axis_label = "Temp"
p.xaxis.axis_line_width = 3
p.xaxis.axis_line_color = "красный"

# изменим кое-что об оси Y
п.yaxis.axis_label = "Давление"
p.yaxis.major_label_text_color = "оранжевый"
p.yaxis.major_label_orientation = "вертикальный"

# изменить ситуацию по всем осям
p.axis.minor_tick_in = -3
p.axis.minor_tick_out = 6

показать (p)
 

Этикетки

Чтобы добавить или изменить текст общей метки оси, используйте axis_label имущество. Чтобы добавить разрывы строк к тексту в метке оси, включите \ n в ваша строка.

Для управления внешним видом текста этикетки используйте любой из стандартных текстовые свойства с префиксом axis_label_ .Например, чтобы установить текст цвет метки установите axis_label_text_color .

Чтобы изменить расстояние между меткой оси и метками основных делений, установите axis_label_standoff недвижимость.

Например:

 из bokeh.plotting import figure, output_file, show

выходной_файл ("bounds.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis.axis_label = "Номер лота"
p.xaxis.axis_label_text_color = "# aa6666"
п.xaxis.axis_label_standoff = 30

p.yaxis.axis_label = "Счетчик корзины"
p.yaxis.axis_label_text_font_style = "курсив"

показать (p)
 

Границы

Чтобы ограничить границы рисования осей, установите свойство bounds оси. объект в кортеж из двух чисел (начало, конец) :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("bounds.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis.bounds = (2, 4)

показать (p)
 

Расположение отметок

Bokeh использует несколько моделей «бегущей строки», чтобы решить, где отображать отметки на осях. (категориальная, дата-время, меркатор, линейная или логарифмическая шкала).Чтобы настроить для размещения отметок используйте свойство оси .ticker .

Если вы используете интерфейс bokeh.plotting, Bokeh выбирает подходящий тикер. модель размещения автоматически.

Если вам нужно указать, какую модель размещения тикера использовать, вы также можете явно определите список местоположений отметок. Назначать FixedTicker со списком отметок для ось:

 из боке. Построение импортного рисунка
из bokeh.models.tickers импортировать FixedTicker

p = цифра ()

# на оси x не будут отображаться дополнительные отметки.
п.xaxis.ticker = FixedTicker (тики = [10, 20, 37,4])
 

В качестве ярлыка вы также можете указать список меток непосредственно на оси ’ тикер недвижимость:

 из bokeh.plotting import figure, output_file, show

выходной_файл ("fixed_ticks.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis.ticker = [2, 3.5, 4]

показать (p)
 

Тиковые линии

Чтобы контролировать внешний вид основных и второстепенных отметок, установите соответствующие свойства строки с префиксом major_tick_ и minor_tick_ соответственно.

Например, чтобы установить цвет основных меток, используйте major_tick_line_color . Чтобы скрыть любой набор меток, установите цвет на Нет .

Кроме того, чтобы контролировать, насколько далеко в области построения и вне области построения метки расширить, используйте свойства major_tick_in / major_tick_out и minor_tick_in / minor_tick_out . Эти значения указаны в экранных единицах. Следовательно, вы можете использовать отрицательные значения.

 из боке.построение рисунка импорта, output_file, show

выходной_файл ("оси.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis.major_tick_line_color = "огнеупорный кирпич"
p.xaxis.major_tick_line_width = 3
p.xaxis.minor_tick_line_color = "оранжевый"

p.yaxis.minor_tick_line_color = Нет

p.axis.major_tick_out = 10
p.axis.minor_tick_in = -3
p.axis.minor_tick_out = 8

показать (p)
 

Форматы этикеток в виде клещей

Чтобы стилизовать текст меток осей, используйте объект TickFormatter оси ’ форматтер свойство.Bokeh по умолчанию использует несколько средств форматирования тикера. разные ситуации:

Эти средства форматирования меток по умолчанию не предоставляют многих настраиваемых свойств. Чтобы управлять форматированием галочки на более детальном уровне, используйте один из NumeralTickFormatter или PrintfTickFormatter , как описано ниже.

Примечание

Для замены модуля форматирования на оси необходимо установить модуль форматирования свойство на реальном объекте Axis , а не в разделяемом списке.Это почему в следующих примерах используется p.yaxis [0] .formatter и т. д. (с индекс [0] ).

NumeralTickFormatter

NumeralTickFormatter имеет свойство формата , которое можно использовать для управления форматированием текста делений оси.

 из bokeh.models import NumeralTickFormatter
from bokeh.plotting import figure, output_file, show

выходной_файл ("gridlines.html")

p = цифра (ширина = 400, высота = 400)
п.круг ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis [0] .formatter = NumeralTickFormatter (format = "0,0%")
p.yaxis [0] .formatter = NumeralTickFormatter (format = "0,00 долларов США")

показать (p)
 

Доступно множество дополнительных форматов. Посмотреть полный NumeralTickFormatter документацию в справочнике.

PrintfTickFormatter

PrintfTickFormatter имеет свойство формата , которое можно использовать для управления форматированием текста отметок оси с использованием стиля printf форматировать строки.

 из bokeh.models import PrintfTickFormatter
from bokeh.plotting import figure, output_file, show

выходной_файл ("gridlines.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis [0] .formatter = PrintfTickFormatter (format = "% 4.1e")
p.yaxis [0] .formatter = PrintfTickFormatter (format = "% 5.3f mu")

показать (p)
 

Для получения полной информации о форматах см. Полный PrintfTickFormatter документацию в справочнике.

FuncTickFormatter

Чтобы полностью настроить формат отметок оси, используйте FuncTickFormatter в сочетание с фрагментом кода JavaScript в качестве его свойства code .

Переменная тика содержит неформатированное значение тика. Это доступно в пространство имен фрагмента или функции во время рендеринга:

 из bokeh.models import FuncTickFormatter
from bokeh.plotting import figure, output_file, show

выходной_файл ("formatter.html")

p = цифра (ширина = 500, высота = 500)
p.circle ([0, 2, 4, 6, 8, 10], [6, 2, 4, 10, 8, 0], size = 30)

p.yaxis.formatter = FuncTickFormatter (code = "" "
    return Math.floor (отметка) + "+" + (отметка% 1) .toFixed (2)
"" ")

показать (p)
 

Отметьте ориентацию этикетки

Для управления ориентацией меток основных отметок используйте major_label_orientation недвижимость.Это свойство принимает значения «по горизонтали» или «по вертикали» или число с плавающей запятой что дает угол (в радианах) для поворота от горизонтали:

 из math import pi

from bokeh.plotting import figure, output_file, show

выходной_файл ("gridlines.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis.major_label_orientation = pi / 4
p.yaxis.major_label_orientation = "вертикальный"

показать (p)
 

Примечание

Есть и другие свойства, которые можно использовать для настройки осей боке.Для полный список всех различных атрибутов, которые вы можете установить на разных типы осей боке, см. раздел осей на справочное руководство.

Решетки для укладки

В этом разделе вы узнаете, как настроить визуальные свойства сетки. линии и полосы сетки на графиках боке.

Чтобы получить объекты сетки графика, используйте методы xgrid , ygrid и grid на Участок . Это работает аналогично удобным методам для осей:

 >>> стр.сетка
[,
 ]
 

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

Примечание

Свойство xgrid предоставляет объекты сетки, которые пересекают Ось x (имеется в виду вертикально ориентированные объекты). Соответственно ygrid предоставляет сеточные объекты, которые пересекают ось Y (то есть горизонтально ориентированные объекты).

Строки

Чтобы настроить внешний вид линий сетки, используйте набор свойства линии с префиксом grid_ .

Например, чтобы установить цвет линий сетки, используйте grid_line_color . Прятаться линии сетки, установите для них цвет линии Нет :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("gridlines.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

# изменим кое-что в x-сетке
п.xgrid.grid_line_color = Нет

# изменим кое-что в y-сетке
p.ygrid.grid_line_alpha = 0,5
p.ygrid.grid_line_dash = [6, 4]

показать (p)
 

Второстепенные строки

Чтобы настроить внешний вид второстепенных линий сетки, используйте набор свойства строки с префиксом minor_grid_ .

Например, чтобы установить цвет линий сетки, используйте minor_grid_line_color . К по умолчанию второстепенные линии сетки скрыты (это означает, что цвет их линий установлен на Нет ):

 из боке.построение рисунка импорта, output_file, show

выходной_файл ("minorgridlines.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

# изменим кое-что в y-сетке
p.ygrid.minor_grid_line_color = 'темно-синий'
p.ygrid.minor_grid_line_alpha = 0,1

показать (p)
 

Полосы

Используйте «полосы» для отображения закрашенных, затемненных полос между соседними линиями сетки. К контролировать внешний вид этих полос, использовать набор свойства заливки и свойства штриховки с префиксом band_ .

Например, чтобы установить цвет полос сетки, используйте band_fill_color . Прятаться сетки, установите для них цвет заливки Нет (это значение по умолчанию).

В этом примере определяются полосы, заполненные сплошным цветом:

 из bokeh.plotting import figure, output_file, show

выходной_файл ("grid_band_fill.html")

p = цифра (ширина = 400, высота = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

# изменим кое-что в x-сетке
p.xgrid.grid_line_color = Нет

# изменим кое-что в y-сетке
п.ygrid.band_fill_alpha = 0,1
p.ygrid.band_fill_color = "темно-синий"

показать (p)
 

В этом примере используются полосы, заполненные штриховкой:

 из bokeh.io import output_file, show
из bokeh.plotting импортная фигура

выходной_файл ("grid_band_hatch.html")

p = фигура (высота = 250, ширина = 600, x_range = (0, 10), tools = "", toolbar_location = None)
p.line (x = [0,1,2,3,4,5,6,7,8,9,10],
       y = [1,3,4,3,1,2,6,5,2,3,4])

p.ygrid.grid_line_color = Нет

тики = [0, 2, 4, 6, 8, 10]
p.xaxis [0] .ticker = тики
п.xgrid [0] .ticker = тики

p.xgrid.band_hatch_pattern = "/"
p.xgrid.band_hatch_alpha = 0,6
p.xgrid.band_hatch_color = "светло-серый"
p.xgrid.band_hatch_weight = 0,5
p.xgrid.band_hatch_scale = 10

показать (p)
 

Границы

Чтобы установить явные границы, ограничивающие место рисования сеток, используйте 2-кортеж (начало, конец) . Это идентично настройке границы по осям:

 из bokeh.plotting import figure, output_file, show

выходной_файл ("bounds.html")

p = цифра (ширина = 400, высота = 400)
п.круг ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.grid.bounds = (2, 4)

показать (p)
 

Примечание

Есть и другие свойства, которые сетки Боке поддерживают настройку. Для полный список всех различных атрибутов, которые можно установить на боке построить сетки, обратитесь к разделу сеток справочное руководство.

Легенды стиля

Подобно удобным методам для осей и сеток, есть legend () Метод на Plot , который можно использовать для получить участок Легенда объектов:

боке.models.plots.Plot.legend

 >>> p.legend
[]
 

Этот метод также возвращает разделяемый список. Следовательно, вы можете установить атрибут в списке, как если бы это был один объект, и атрибут был изменен для каждого элемента списка:

 p.legend.label_text_font = "раз"
 

Расположение

Для управления расположением меток легенды используйте свойство location .

Внутри участка

Для легенд в центральной области макета, например созданных автоматически по боке.черчение, установите location на одно из следующих значения:

"верх_влево"

"верх_центр"

"top_right" (по умолчанию)

"center_right"

"bottom_right"

"нижний_центр"

"bottom_left"

"center_left"

«центр»

или (x, y) кортеж, указывающий абсолютное местоположение в координатах экрана (в пикселях от левого нижнего угла).

 импортировать numpy как np

from bokeh.plotting import figure, output_file, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_labels.html")

p = цифра ()

p.circle (x, y, legend_label = "sin (x)")
p.line (x, y, legend_label = "sin (x)")

p.line (x, 2 * y, legend_label = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend_label = "3 * sin (x)", fill_color = None, line_color = "зеленый")
p.line (x, 3 * y, legend_label = "3 * sin (x)", line_color = "зеленый")

п.legend.location = "bottom_left"

показать (p)
 
Вне участка

Чтобы разместить легенду за пределами центральной области, используйте метод add_layout из Участок. Для этого необходимо напрямую создать объект Legend :

 импортировать numpy как np

из bokeh.models import Legend
from bokeh.plotting import figure, output_file, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_labels.html")

p = рисунок (toolbar_location = "выше")

r0 = p.круг (х, у)
r1 = p.line (x, y)

r2 = p.line (x, 2 * y, line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

r3 = p.square (x, 3 * y, fill_color = None, line_color = "зеленый")
r4 = p.line (x, 3 * y, line_color = "зеленый")

легенда = Легенда (items = [
    ("sin (x)", [r0, r1]),
    ("2 * sin (x)", [r2]),
    ("3 * sin (x)", [r3, r4]),
], location = "center")

p.add_layout (легенда, 'справа')

показать (p)
 

В этом случае вам необходимо указать местоположение легенды в абсолютном выражении. В будущих выпусках будут добавлены дополнительные параметры для настройки положения легенды.

Название

Чтобы добавить или изменить заголовок легенды, используйте его title property:

 plot.legend.title = "Подразделение"
 

Для управления внешним видом заголовка легенды используйте любой из стандартных текстовые свойства с префиксом title_ . Например, чтобы установить шрифт стиль легенды используйте title_text_font_style .

Чтобы установить расстояние между заголовком и остальной частью легенды (в пикселях), используйте свойство title_standoff .

 импортировать панд как pd

из bokeh.palettes import Spectral4
from bokeh.plotting import figure, output_file, show
из bokeh.sampledata.stocks импортировать AAPL, GOOG, IBM, MSFT

output_file ("styling_legend_title.html", title = "пример style_legend_title.py")

p = цифра (ширина = 800, высота = 250, x_axis_type = "datetime")

для данных, имя, цвет в zip ([AAPL, IBM, MSFT, GOOG], [«AAPL», «IBM», «MSFT», «GOOG»], Spectral4):
    df = pd.DataFrame (данные)
    df ['дата'] = pd.to_datetime (df ['дата'])
    п.строка (df ['date'], df ['close'], line_width = 2, color = color, legend_label = name)

p.legend.location = "top_left"
p.legend.title = 'Акции'
p.legend.title_text_font_style = "жирный"
p.legend.title_text_font_size = "20px"

показать (p)
 

Ориентация

Для управления ориентацией легенды используйте свойство direction . Допустимые значения для этого свойства:

.

Ориентация по умолчанию - "вертикальная" .

 импортировать numpy как np

from bokeh.plotting import figure, output_file, show

х = нп.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_labels.html")

p = цифра ()

p.circle (x, y, legend_label = "sin (x)")
p.line (x, y, legend_label = "sin (x)")

p.line (x, 2 * y, legend_label = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend_label = "3 * sin (x)", fill_color = None, line_color = "зеленый")
p.line (x, 3 * y, legend_label = "3 * sin (x)", line_color = "зеленый")

p.legend.orientation = "горизонтальный"

показать (p)
 

Текст этикетки

Для управления внешним видом меток легенды используйте любой из стандартных текстовые свойства с префиксом label_ .Например, чтобы установить шрифт стиль этикеток, используйте label_text_font_style .

 импортировать numpy как np

from bokeh.plotting import figure, output_file, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_labels.html")

p = цифра ()

p.circle (x, y, legend_label = "sin (x)")
p.line (x, y, legend_label = "sin (x)")

p.line (x, 2 * y, legend_label = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend_label = "3 * sin (x)", fill_color = None, line_color = "зеленый")
п.line (x, 3 * y, legend_label = "3 * sin (x)", line_color = "green")

p.legend.label_text_font = "раз"
p.legend.label_text_font_style = "курсив"
p.legend.label_text_color = "темно-синий"

показать (p)
 

Граница

Для управления внешним видом границы легенды используйте набор свойства строки с префиксом border_ . Например, чтобы установить цвет границы используйте border_line_color . Чтобы сделать границу невидимой, установите цвет линии границы на Нет .

 импортировать numpy как np

from bokeh.plotting import figure, output_file, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_border.html")

p = цифра ()

p.circle (x, y, legend_label = "sin (x)")
p.line (x, y, legend_label = "sin (x)")

p.line (x, 2 * y, legend_label = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend_label = "3 * sin (x)", fill_color = None, line_color = "зеленый")
p.line (x, 3 * y, legend_label = "3 * sin (x)", line_color = "зеленый")

п.legend.border_line_width = 3
p.legend.border_line_color = "темно-синий"
p.legend.border_line_alpha = 0,5

показать (p)
 

Фон

Для управления внешним видом фона легенды используйте коллекцию свойств заливки с префиксом background_ . Например, чтобы установить цвет фона, используйте background_fill_color . Сделать фон прозрачный, установите background_fill_alpha на 0 .

 импортировать numpy как np

из боке.построение рисунка импорта, output_file, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

output_file ("legend_background.html")

p = цифра ()

p.circle (x, y, legend_label = "sin (x)")
p.line (x, y, legend_label = "sin (x)")

p.line (x, 2 * y, legend_label = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend_label = "3 * sin (x)", fill_color = None, line_color = "зеленый")
p.line (x, 3 * y, legend_label = "3 * sin (x)", line_color = "зеленый")

# 3 * кривая sin (x) должна находиться под этой легендой при первоначальном просмотре, поэтому
# мы видим, что легенда прозрачна
п.legend.location = "bottom_right"
p.legend.background_fill_color = "темно-синий"
p.legend.background_fill_alpha = 0,5

показать (p)
 

Размеры

Для управления такими размерами, как расположение или расстояние между компонентами этикеток, используйте следующие свойства:

Есть несколько свойств, которые можно использовать для управления макетом, интервал и т. д. компонентов легенды:

label_standoff = 5
Тип

Внутр.

Расстояние (в пикселях), на котором метка отделена от связанного с ней глифа.

label_width = 20
Тип

Внутр.

Минимальная ширина (в пикселях) области, которую должны занимать подписи легенды.

label_height = 20
Тип

Внутр.

Минимальная высота (в пикселях) области, которую должны занимать подписи.

ширина глифа = 20
Тип

Внутр.

Ширина (в пикселях), которую должен занимать отрисованный глиф легенды.

glyph_height = 20
Тип

Внутр.

Высота (в пикселях), которую должен занимать отрисованный глиф легенды.

заполнение = 10
Тип

Внутр.

Размер отступа вокруг содержимого легенды. Применимо только когда граница видна, в противном случае сбрасывается до 0.

интервал = 3
Тип

Внутр.

Расстояние (в пикселях) между элементами легенды.

маржа = 10
Тип

Внутр.

Размер поля вокруг легенды.

 импортировать numpy как np

from bokeh.plotting import figure, output_file, show

х = нп.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_labels.html")

p = цифра ()

p.circle (x, y, legend_label = "sin (x)")
p.line (x, y, legend_label = "sin (x)")

p.line (x, 2 * y, legend_label = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend_label = "3 * sin (x)", fill_color = None, line_color = "зеленый")
p.line (x, 3 * y, legend_label = "3 * sin (x)", line_color = "зеленый")

p.legend.label_standoff = 5
p.legend.glyph_width = 50
p.legend.spacing = 10
p.legend.padding = 50
п.legend.margin = 50

показать (p)
 

Установка уровней рендеринга

Чтобы указать порядок, в котором отрисовываются объекты, используйте одну из следующих визуализаций уровней:

изображение

«самый низкий» уровень рендеринга, отображается раньше всего

подкладка

Уровень рендеринга по умолчанию для сеток

глиф

уровень рендеринга по умолчанию для всех глифов (что означает, что они рисуются над сетками)

аннотация

Уровень рендеринга по умолчанию для рендереров аннотаций

накладка

«высший» уровень рендеринга для наложений инструментов

В пределах данного уровня средства визуализации отображаются в том порядке, в котором они были добавлены.

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

Например, чтобы убедиться, что изображение отображается на под линиями сетки, назначьте от уровня рендеринга «изображение» до аргумента уровня при вызове вашего изображение средство визуализации:

 p.image (..., level = "image")
 

Вы можете увидеть полный пример с выводом в разделе Цветные изображения.

Добавление математических обозначений

Bokeh поддерживает математические обозначения, выраженные в разметке LaTeX и MathML. языки с растущим числом элементов.В настоящее время вы можете использовать LaTeX и обозначения MathML с метками осей и отметьте метки, используя major_label_overrides () . Вы можете также используйте LaTeX с div или виджетов абзацев .

Bokeh использует библиотеку MathJax для обработки LaTeX и MathML. См. Официальное Документация MathJax для получения дополнительной информации о MathJax. Если вы используете components () функция, обязательно включите ресурс bokeh-mathjax- в ваш шаблон html.

LaTeX

Чтобы использовать нотацию LaTeX, вы можете передать строку напрямую в любой поддерживаемый элемент.Эта строка должна начинаться и заканчиваться одним из Разделители по умолчанию MathJax. Эти разделители: $$ ... $$ , \ [... \] , и \ (... \) . Например: r "$$ \ sin (x) $$" .

LaTeX и метки оси

Чтобы использовать нотацию LaTeX в качестве метки оси, передайте начало необработанного строкового литерала и заканчивается разделителями по умолчанию MathJax и содержит нотацию LaTeX в свойство axis_label оси. Для пример:

 из numpy import arange, pi, sin

из боке.построение рисунка импорта, показать

х = диапазон (-2 * пи, 2 * пи, 0,1)
у = грех (х)

сюжет = фигура (высота = 200)
plot.circle (x, y, alpha = 0.6, size = 7)

plot.yaxis.axis_label = r "\ [\ sin (x) \]"
plot.xaxis.axis_label = r "\ [x \ cdot \ pi \]"

шоу (сюжет)
 
LaTeX и метки в виде галочки

Чтобы добавить обозначения LaTeX к вашим меткам, используйте major_label_overrides () функция с осью.

Эта функция используется для замены значений существующих меток галочки на пользовательские. текст.Он принимает словарь с исходным значением метки галочки в качестве key и ваше пользовательское значение в качестве значения dict.

Используйте эту функцию для замены любых текстовых меток галочки с нотацией LaTeX:

 из numpy import arange

из боке. построение импортного рисунка, шоу

х = диапазон (1; 4,5; 0,25)
у = 1 / х

сюжет = фигура (высота = 200)
plot.circle (x, y, fill_color = "blue", size = 5)
plot.line (x, y, color = "темно-серый")

plot.xaxis.axis_label = "Сопротивление"
plot.xaxis.ticker = [1, 2, 3, 4]
участок.yaxis.axis_label = "Ток при 1 В"

plot. 2 (x) = 1 $$"
)

показать (div)
 

Чтобы отключить рендеринг LaTeX для виджета div или абзаца, установите для виджета disable_math значение True.

У вас также есть возможность использовать расширения LaTeX, включенные в MathJax. Например, используйте расширение цвета, чтобы изменить цвет визуализированного Обозначение LaTeX: \ color {white} \ sin (x) .

Примечание

Есть ограничения на то, сколько LaTeX MathJax поддерживает. Видеть Подробнее об отличиях от Actual TeX в документации MathJax.

MathML

Чтобы добавить математические обозначения, написанные на MathML, используйте Bokeh’s MathML модель напрямую.Эта модель имеет текст свойство, которое принимает строку, содержащую MathML. Например:

 из numpy import arange

из bokeh.models импортировать MathML
из боке. построение импортного рисунка, шоу

x = диапазон (-10, 10, 0,1)
у = (х * 0,5) ** 2

mathml = "" "
<математика>
  
    
       1 
       4 
    
    
       x 
       2 
    
  

"" "

сюжет = фигура (высота = 200)
участок.линия (x, y)

plot.xaxis.axis_label = MathML (текст = mathml)

шоу (сюжет)
 

Для получения дополнительной информации см. MathML в справочное руководство.

Bokeh Docs

Использование палитр

Палитры - это последовательности (списки или кортежи) шестнадцатеричных строк RGB (A), которые определяют colormap и может быть установлен как атрибут палитры для всех типов диаграмм из bokeh.charts и как атрибут цвета многих графических объектов из боке. График .Bokeh предлагает множество стандартных палитр Брюера, которые можно импортировать из модуля bokeh.palettes . Например, импорт «Spectral6» дает список из шести элементов шестнадцатеричных строк RGB (A) от Brewer «Спектральная» палитра.

 >>> из bokeh.palettes import Spectral6
>>> Spectral6
['# 3288bd', '# 99d594', '# e6f598', '# fee08b', '# fc8d59', '# d53e4f']
 

Все стандартные палитры, включенные в боке, можно найти на боке. палитры. Пользовательские палитры могут быть созданы путем создания последовательностей Шестнадцатеричные строки RGB (A).

Визуальные свойства

Чтобы стилизовать визуальные атрибуты графиков Боке, сначала необходимо знать, какие есть доступные свойства. Полное справочное руководство будет перечислить все свойства каждого объекта индивидуально, хотя есть три широкие группы свойств, которые часто появляются. Их:

  • свойства линии цвет, ширина линии и т. Д.
  • свойства заливки цвет заливки, альфа и т. Д.
  • свойства текста стили шрифтов, цвета и т. Д.

Ниже приводится более подробная информация о каждом из них.

Свойства линии

цвет_линии
цвет для обводки линий с помощью
ширина_линии
ширина линии в пикселях
line_alpha
с плавающей точкой между 0 (прозрачный) и 1 (непрозрачный)
line_join

как сегменты пути должны быть соединены вместе

заглушка

как должны завершаться сегменты пути

line_dash

стиль линии для использования

  • твердый
  • пунктирная
  • , пунктирная
  • точка, точка
  • дашдот
  • массив целочисленных расстояний между пикселями, которые описывают шаблон включения-выключения рывка для использования
  • строка целых чисел с интервалом, соответствующая регулярному выражению ‘^ (\ d + (\ s + \ d +) *)? $’ которые описывают схему включения-выключения рывка для использования
line_dash_offset
расстояние в пикселях до line_dash , с которого шаблон должен начинаться с

Свойства заливки

fill_color
Цвет
для заливки контуров цветом
fill_alpha
с плавающей точкой между 0 (прозрачный) и 1 (непрозрачный)

Свойства текста

text_font
название шрифта, e.г., 'раз' , 'helvetica'
text_font_size
размер шрифта в пикселей , em или pt , например, '12pt' , '1.5em'
text_font_style

стиль шрифта для использования

  • 'обычный' обычный текст
  • курсив курсив
  • полужирный полужирный
цвет текста
цвет для визуализации текста с помощью
text_alpha
с плавающей точкой между 0 (прозрачный) и 1 (непрозрачный)
text_align
горизонтальная точка привязки текста: 'слева' , 'справа' , 'по центру'
text_baseline

вертикальная точка привязки текста

  • 'верх'
  • 'средний'
  • нижний
  • 'алфавитный'
  • «подвешивание»

Примечание

В настоящее время поддерживается только заполнение текста.Интерфейс для обводки контуры текста еще не обнажены.

Определение цветов

Свойства цветов используются во многих местах в боке, чтобы указать цвета для используйте для линий, заливок или текста. Значения цвета можно указать в любом из следующими способами:

  • любой из 147 названных цветов CSS, например «зеленый» , «индиго»
  • шестнадцатеричное значение RGB (A), например, '# FF0000' , '# 44444444'
  • кортеж из трех целых чисел (r, g, b) от 0 до 255
  • 4-кортеж из (r, g, b, a) , где r , g , b - целые числа от 0 до 255 и , а - значение с плавающей запятой от 0 до 1

Цвет альфа-канала можно указать несколькими способами для визуальных свойств.Этот можно указать альфа напрямую с помощью line | fill_alpha или предоставление альфы через кортеж из 4 RGBA для строки | fill_color .

Кроме того, существует также свобода использования комбинации двух или отсутствия альфа вообще. На следующем рисунке показаны все возможные комбинации входы для линий и заливок:

Примечание

При использовании интерфейса bokeh.plotting можно также указать color и / или alpha в качестве ключевого слова, а также продемонстрированный цвет характеристики.Эти входные данные работают, применяя предоставленное значение к обоим из соответствующие строки и заполняют свойства . Однако вы все еще можете предоставить fill | line_alpha или fill | line_color в сочетании с ключевые слова color / alpha , первое будет иметь приоритет.

Выбор графических объектов

Как описано в разделе «Определение ключевых понятий», графики боке состоят из графиков объекты, которые представляют все различные части графика: сетки, оси, глифы и т. д.Чтобы стилизовать графики Боке, необходимо сначала найти нужный объект, а затем установите его различные атрибуты. Некоторые объекты имеют удобные методы, помогающие найти интересующие объекты (см. Оси, Сетки и легенды). Но есть также метод select () на Plot которые можно использовать для запроса объектов графика Боке в более общем плане.

Например, вы можете запрашивать объекты по типу. Следующий фрагмент возвращает все объекты PanTool на графике:

 >>> стр.выберите (тип = PanTool)
[]
 

Метод select () может также запрашивать другие атрибуты:

 >>> p.circle (0, 0, name = "mycircle")


>>> p.select (name = "mycircle")
[]
 

Этот вид запросов может быть особенно полезен для стилизации визуальных атрибутов. символов.

Участки

Объекты Plot сами по себе обладают множеством визуальных характеристик, которые можно стилизовать: размеры участка, фоны, границы, очертания и т. д.Эта секция описывает, как изменить эти атрибуты графика боке. Пример кода в основном использует интерфейс bokeh.plotting для создания графиков, однако инструкции применяются независимо от того, как был создан график с эффектом боке.

Размеры

Размеры (ширина и высота) Plot контролируются plot_width и plot_height атрибутов. Эти значения указаны в единицах экрана, и они контролировать размер всей области холста, включая любые оси или заголовки (но не панель инструментов).Если вы используете bokeh.plotting или bokeh.charts интерфейсы, то эти значения можно передать в figure () или в функцию Chart для удобства:

 из bokeh.plotting import figure, output_file, show

выходной_файл ("размеры.html")

# создаем новый сюжет с заголовком
p = фигура (ширина_графика = 700)
p.plot_height = 300

p.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 10)

показать (p)
 

Адаптивные размеры

Кроме того, вы можете использовать отзывчивый атрибут .Отзывчивый атрибут заставляет сюжет заполнять контейнер, в котором он сидит, и реагировать на изменения размера браузера. Адаптивные веб-элементы - обычное дело в сети. development и флаг Response может быть полезен, если вы пытаетесь представить свой сюжет на веб-сайте, где вы хотите, чтобы он соответствовал ряду браузеры. Если вы установите флаг реагирования, plot_width и plot_height будут немедленно изменится, когда график будет отображен, чтобы заполнить контейнер.Тем не мение, эти параметры будут использоваться для расчета начального соотношения сторон вашего сюжет, так что вы можете оставить их себе. Графики будут уменьшены только до минимального 100 пикселей (высота или ширина), чтобы предотвратить проблемы с отображением вашего графика.

Предупреждение

Известно, что эта функция не работает в сочетании с HBox. Это новая функция, и при использовании в других обстоятельствах могут возникнуть другие проблемы. Сообщайте об этих проблемах в репозитории Bokeh GitHub или в списке рассылки Bokeh.

Название

Стиль заголовка графика контролируется набором свойств текста. на Участке , с префиксом title_ . Например, чтобы установить цвет текста заголовка, используйте title_text_color :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("title.html")

# создаем новый сюжет с заголовком
p = рисунок (plot_width = 400, plot_height = 400, title = "Some Title")
p.title_text_color = "оливковый"
p.title_text_font = "раз"
п.title_text_font_style = "курсив"

p.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 10)

показать (p)
 

Фон

Стиль заливки фона управляется background_fill_color и background_fill_alpha Свойства объекта Plot :

 из bokeh.plotting import figure, output_file, show

output_file ("background.html")

# создаем новый сюжет с заголовком
p = фигура (plot_width = 400, plot_height = 400)
p.background_fill_color = "бежевый"
п.background_fill_alpha = 0,5

p.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 10)

показать (p)
 

Граница

Стиль заливки границы контролируется border_fill_color и border_fill_alpha свойства объекта Plot . Вы также можете установить минимальная граница с каждой стороны (в единицах экрана) со свойствами

min_border_left

min_border_right

min_border_top

min_border_bottom

Кроме того, установка min_border применит минимальную настройку границы со всех сторон для удобства.Значение по умолчанию min_border - 40 пикселей.

 из bokeh.plotting import figure, output_file, show

выходной_файл ("border.html")

# создаем новый сюжет с заголовком
p = фигура (plot_width = 400, plot_height = 400)
p.border_fill_color = "белый дым"
p.min_border_left = 80

p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

показать (p)
 

Наброски

Стиль контура области печати контролируется набором Свойства линии на участке Plot с префиксом outline_ .Для Например, чтобы установить цвет контура, используйте outline_line_color :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("схема.html")

# создаем новый сюжет с заголовком
p = фигура (plot_width = 400, plot_height = 400)
p.outline_line_width = 7
p.outline_line_alpha = 0,3
p.outline_line_color = "темно-синий"

p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

показать (p)
 

Символы

Чтобы стилизовать свойства заливки, линии или текста глифа, сначала необходимо для получения конкретного GlyphRenderer .При использовании bokeh.plotting, функции глифов возвращают средство визуализации:

 >>> r = p.circle ([1,2,3,4,5], [2,5,8,2,7])
>>> г

 

Затем сам глиф получается из атрибута .glyph объекта GlyphRenderer :

 >>> r. Глиф

 

Это объект, для которого задаются значения свойств заливки, линии или текста:

 из боке.построение рисунка импорта, output_file, show

выходной_файл ("оси.html")

p = фигура (plot_width = 400, plot_height = 400)
r = p.circle ([1,2,3,4,5], [2,5,8,2,7])

глиф = r. глиф
glyph.size = 60
glyph.fill_alpha = 0,2
glyph.line_color = "огнеупорный кирпич"
glyph.line_dash = [6, 3]
glyph.line_width = 2

показать (p)
 

Выбранные и невыбранные глифы

Стиль выбранных и невыбранных глифов можно настроить с помощью установка атрибутов selection_glyph и / или nonselection_glyph из GlyphRenderer вручную или передав их в add_glyph () .

На графике ниже показано, как установить эти атрибуты с помощью bokeh.plotting interface. Щелкните или коснитесь кружков на графике, чтобы увидеть влияет на выбранные и невыделенные глифы. Чтобы очистить выделение и восстановите исходное состояние, щелкните в любом месте графика за пределами круг.

 из bokeh.io import output_file, show
из bokeh.plotting импортная фигура
из bokeh.models import Circle

выходной_файл ("style_selections.html")

plot = figure (plot_width = 400, plot_height = 400, tools = "tap", title = "Выберите круг")
рендерер = сюжет.круг ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 50)

selected_circle = Круг (fill_alpha = 1, fill_color = "firebrick", line_color = None)
nonselected_circle = Круг (fill_alpha = 0,2, fill_color = "синий", line_color = "огнеупорный кирпич")

renderer.selection_glyph = selected_circle
renderer.nonselection_glyph = nonselected_circle

шоу (сюжет)
 

Если вам просто нужно установить цвет или альфа-параметры выбранного или невыделенные глифы, это можно сделать еще проще, предоставив аргументы цвета и альфа функции глифа с префиксом "selection_" или "nonselection_" .График ниже демонстрирует эту технику:

 из bokeh.io import output_file, show
из bokeh.plotting импортная фигура

выходной_файл ("style_selections.html")

plot = figure (plot_width = 400, plot_height = 400, tools = "tap", title = "Выберите круг")
renderer = plot.circle ([1, 2, 3, 4, 5], [2, 5, 8, 2, 7], size = 50,

                       # установить визуальные свойства для выбранных глифов
                       selection_color = "огнеупорный кирпич",

                       # установить визуальные свойства для невыбранных глифов
                       nonselection_fill_alpha = 0.2,
                       nonselection_fill_color = "синий",
                       nonselection_line_color = "огнеупорный кирпич",
                       nonselection_line_alpha = 1.0)

шоу (сюжет)
 

То же самое может быть достигнуто с помощью следующего интерфейса моделей:

 p = участок ()
источник = ColumnDataSource (dict (x = [1, 2, 3], y = [1, 2, 3]))

initial_circle = Круг (x = 'x', y = 'y', fill_color = 'blue', size = 50)
selected_circle = Круг (fill_alpha = 1, fill_color = "firebrick", line_color = None)
nonselected_circle = Круг (fill_alpha = 0.2, fill_color = "blue", line_color = "firebrick")

p.add_glyph (источник,
            initial_circle,
            selection_glyph = выбранный_круг,
            nonselection_glyph = nonselected_circle)
 

Примечание

Только визуальный элемент свойства selection_glyph и nonselection_glyph учитываются при рендеринге. Изменение позиции, размеры и т. д. не будут иметь никакого эффекта.

Инспекции при зависании

Установка политики выделения для глифов, над которыми наведен курсор, полностью аналогично установке selection_glyph или nonselection_glyph , или передавая параметры цвета или альфа с префиксом "hover_" .Пример ниже демонстрируется последний метод:

 из bokeh.plotting import figure, output_file, show
из bokeh.models импортировать HoverTool
из bokeh.sampledata.gluosis data import data

output_file ("styling_hover.html")

subset = data.ix ['2010-10-06']

x, y = subset.index.to_series (), subset ['глюкоза']

# Базовая настройка сюжета
plot = figure (width = 600, height = 300, x_axis_type = "datetime", tools = "",
              toolbar_location = Нет, title = 'Наведите указатель мыши на точки')

plot.line (x, y, line_dash = "4 4", line_width = 1, color = 'gray')

cr = сюжет.круг (x, y, размер = 20,
                fill_color = "серый", hover_fill_color = "огнеупорный кирпич",
                fill_alpha = 0,05, hover_alpha = 0,3,
                line_color = Нет, hover_line_color = "белый")

plot.add_tools (HoverTool (tooltips = None, renderers = [cr], mode = 'hline'))

шоу (сюжет)
 

Примечание

Учитываются только свойства visual для hover_glyph , когда рендеринг. Изменение положения, размеров и т. Д. Не повлияет.

Оси

В этом разделе вы узнаете, как изменять различные визуальные свойства. осей сюжета Боке.

Чтобы установить атрибуты стиля для объектов Axis, используйте xaxis , yaxis и axis методы на Plot для первого получения объектов Axis графика:

 >>> ось оси
[]
 

Возвращает список объектов Axis (так как их может быть более один). Но обратите внимание, что для удобства эти списки разделяются на , это означает, что вы можете устанавливать атрибуты непосредственно для этого результата, и атрибуты будут применены ко всем осям в списке:

 с.xaxis.axis_label = "Температура"
 

изменит значение axis_label для каждой оси x (однако много может быть).

Ниже приведен код, который устанавливает некоторые свойства осей. Вы можете выполните этот код и попробуйте также установить другие свойства.

 из bokeh.plotting import figure, output_file, show

выходной_файл ("оси.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

# изменим кое-что в осях x
п.xaxis.axis_label = "Temp"
p.xaxis.axis_line_width = 3
p.xaxis.axis_line_color = "красный"

# изменим кое-что об осях Y
p.yaxis.axis_label = "Давление"
p.yaxis.major_label_text_color = "оранжевый"
p.yaxis.major_label_orientation = "вертикальный"

# изменить ситуацию по всем осям
p.axis.minor_tick_in = -3
p.axis.minor_tick_out = 6

показать (p)
 

Этикетки

Текст общей метки для оси контролируется axis_label имущество. Кроме того, есть свойства текста с префиксом axis_label_ , которые управляют внешним видом метки.Например чтобы установить цвет метки, установите axis_label_text_color . Наконец, чтобы изменить расстояние между меткой оси и метками основных делений, установить свойство axis_label_standoff :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("bounds.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis.axis_label = "Номер лота"
p.xaxis.axis_label_text_color = "# aa6666"
p.xaxis.axis_label_standoff = 30

п.yaxis.axis_label = "Счетчик корзины"
p.yaxis.axis_label_text_font_style = "курсив"

показать (p)
 

Границы

Иногда бывает полезно ограничить границы рисования осей. Это может быть достигается путем установки свойства bounds объекта оси на 2-кортеж из (начало, конец) :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("bounds.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

п.xaxis.bounds = (2, 4)

показать (p)
 

Расположение клещей

Bokeh имеет несколько моделей «бегущей строки», которые позволяют выбирать удобные места для клещей. Они настраиваются на свойстве .ticker оси. С интерфейсы bokeh.plotting и bokeh.charts, выбирая соответствующий тикер тип (категориальный, дата-время, линейная или логарифмическая шкала) обычно бывает автоматически. Однако бывают случаи, когда требуется более явный контроль. полезный.

Фиксированный тикер

Эта модель тикера позволяет пользователям указывать точные местоположения тикеров. явно.

 из bokeh.plotting import figure, output_file, show
из bokeh.models импортировать FixedTicker

выходной_файл ("оси.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis [0] .ticker = FixedTicker (тики = [2, 3.5, 4])

показать (p)
 

Тиковых линий

Внешний вид основных и второстепенных клещей контролируется набор свойств линии с префиксом major_tick_ и minor_tick_ соответственно.Например, чтобы установить цвет основные тики, используйте major_tick_line_color . Чтобы скрыть любой набор отметок, установите цвет на Нет . Кроме того, вы можете контролировать, насколько далеко в за пределы области построения тики выходят со свойствами major_tick_in / major_tick_out и minor_tick_in / minor_tick_out . Эти значения указаны в экранных единицах, отрицательные значения допустимы.

 из bokeh.plotting import figure, output_file, show

output_file ("оси.html ")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis.major_tick_line_color = "огнеупорный кирпич"
p.xaxis.major_tick_line_width = 3
p.xaxis.minor_tick_line_color = "оранжевый"

p.yaxis.minor_tick_line_color = Нет

p.axis.major_tick_out = 10
p.axis.minor_tick_in = -3
p.axis.minor_tick_out = 8

показать (p)
 

Форматы меток

Стиль текста меток осей управляется объектом TickFormatter настроен на свойстве форматтера оси .Боке использует несколько тикеров форматеры по умолчанию в разных ситуациях:

Эти средства форматирования меток по умолчанию не предоставляют многих настраиваемых свойств. Чтобы управлять форматированием галочки на более мелком уровне, используйте один из NumeralTickFormatter или PrintfTickFormatter , как описано ниже.

Примечание

Чтобы заменить средство форматирования на оси, необходимо установить средство форматирования свойство на реальном объекте Axis , а не в разделяемом списке.Это почему используется p.yaxis [0] .formatter и т. д. (с индексом [0] ).

NumeralTickFormatter

NumeralTickFormatter имеет свойство формата , которое можно использовать для управления форматированием текста делений оси.

 из bokeh.plotting import figure, output_file, show
из bokeh.models импортировать NumeralTickFormatter

выходной_файл ("gridlines.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

п.xaxis [0] .formatter = NumeralTickFormatter (format = "0,0%")
p.yaxis [0] .formatter = NumeralTickFormatter (format = "0,00 долларов США")

показать (p)
 

Доступно множество дополнительных форматов, см. Полный NumeralTickFormatter документацию в Справочном руководстве.

PrintfTickFormatter

PrintfTickFormatter имеет свойство формата , которое можно использовать для управления форматированием текста отметок оси с использованием стиля printf форматировать строки.

 из bokeh.plotting import figure, output_file, show
из bokeh.models импортировать PrintfTickFormatter

выходной_файл ("gridlines.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis [0] .formatter = PrintfTickFormatter (format = "% 4.1e")
p.yaxis [0] .formatter = PrintfTickFormatter (format = "% 5.3f mu")

показать (p)
 

Для получения полной информации о форматах см. Полный PrintfTickFormatter документацию в Справочном руководстве.

Отметка ориентации ярлыка

Ориентацией основных меток можно управлять с помощью major_label_orientation недвижимость.Это свойство принимает значения "по горизонтали" или "по вертикали" или число с плавающей запятой что дает угол (в радианах) для поворота от горизонтали:

 из math import pi
from bokeh.plotting import figure, output_file, show

выходной_файл ("gridlines.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.xaxis.major_label_orientation = pi / 4
p.yaxis.major_label_orientation = "вертикальный"

показать (p)
 

Есть и другие свойства, которые поддерживают настройки осей боке.Для получения полного списка всех различных атрибутов, которые могут быть установлены о различных типах осей боке см. bokeh.models.axes раздел Справочного руководства.

Сетки

В этом разделе вы узнаете, как настроить визуальные свойства сетки. линии и полосы сетки на графиках боке.

Аналогично удобным методам для осей есть xgrid , ygrid , и методы grid на Plot , которые можно использовать для получения сетки графика объектов:

 >>> стр.сетка
[,
 ]
 

Эти методы также возвращают разделяемые списки, так что вы можете установить атрибут в списке, как если бы это был один объект, и атрибут был изменен для каждого элемента списка:

Примечание

Свойство xgrid предоставляет объекты сетки, которые пересекают ось x (т. е. вертикальные). Соответственно, ygrid обеспечивает объекты сетки, пересекающие ось Y (т.е., горизонтальные).

Строки

Внешний вид линий сетки контролируется набором Свойства линии с префиксом grid_ . Например, чтобы установить цвет линий сетки, используйте grid_line_color . Чтобы скрыть линии сетки, установите цвет их линий на Нет .

 из bokeh.plotting import figure, output_file, show

выходной_файл ("gridlines.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

# изменим кое-что в x-сетке
п.xgrid.grid_line_color = Нет

# изменим кое-что в y-сетке
p.ygrid.grid_line_alpha = 0,5
p.ygrid.grid_line_dash = [6, 4]

показать (p)
 

Второстепенные строки

Внешний вид второстепенных линий сетки контролируется набором Свойства линии с префиксом minor_grid_ . Например, чтобы установить цвет линий сетки, используйте minor_grid_line_color . По умолчанию второстепенная сетка линии скрыты (т.е. их цвет линии установлен на Нет ).

 из bokeh.plotting import figure, output_file, show

выходной_файл ("minorgridlines.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

# изменим кое-что в y-сетке
p.ygrid.minor_grid_line_color = 'темно-синий'
p.ygrid.minor_grid_line_alpha = 0,1

показать (p)
 

Полосы

Также возможно отображение закрашенных, затемненных полос между соседними линии сетки. Внешний вид этих полос контролируется коллекция свойств заливки с префиксом band_ .Например, чтобы установить цвет полос сетки, используйте band_fill_color . Чтобы скрыть сетку полос, установите для них цвет заливки Нет (это значение по умолчанию).

 из bokeh.plotting import figure, output_file, show

выходной_файл ("gridbands.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

# изменим кое-что в x-сетке
p.xgrid.grid_line_color = Нет

# изменим кое-что в y-сетке
p.ygrid.band_fill_alpha = 0.1
p.ygrid.band_fill_color = "темно-синий"

показать (p)
 

Границы

Сетки

также поддерживают установку явных границ, между которыми они рисуются. Они устанавливаются так же, как и границы осей, с 2-кортежем из (начало, конец) :

 из bokeh.plotting import figure, output_file, show

выходной_файл ("bounds.html")

p = фигура (plot_width = 400, plot_height = 400)
p.circle ([1,2,3,4,5], [2,5,8,2,7], size = 10)

p.grid.bounds = (2, 4)

показать (p)
 

Есть и другие свойства, которые сетки Боке поддерживают настройку.Для полный список всех различных атрибутов, которые можно установить на боке для построения сеток обратитесь к разделу bokeh.models.grids в Справочное руководство.

Легенды

Подобно удобным методам для осей и сеток, есть легенда метод на участке , который можно использовать для получения легенды графика объектов:

 >>> p.legend
[]
 

Этот метод также возвращает разделяемый список, так что вы можете установить атрибут в списке, как если бы это был один объект, и атрибут был изменен для каждого элемента списка:

 с.legend.label_text_font = "раз"
 

Примечание

В примерах в этом разделе используется NumPy для упрощения создания лучших данные подходят для демонстрации легенд.

Расположение

Расположение меток легенды контролируется ячейкой имущество. Допустимые значения для этого свойства:

.

"верх_влево"

"верх_центр"

"top_right" (по умолчанию)

"правый_центр"

"bottom_right"

"нижний_центр"

"bottom_left"

"левый_центр"

«центр»

или (x, y) кортеж, указывающий абсолютное местоположение в координатах экрана (в пикселях от левого нижнего угла).

 импортировать numpy как np
from bokeh.plotting import figure, show, output_file

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_labels.html")

p = цифра ()

p.circle (x, y, legend = "sin (x)")
p.line (x, y, legend = "sin (x)")

p.line (x, 2 * y, legend = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend = "3 * sin (x)", fill_color = None, line_color = "green")
p.line (x, 3 * y, legend = "3 * sin (x)", line_color = "green")

p.legend.location = "bottom_left"

показать (p)
 

Примечание

В настоящее время невозможно разместить легенду за пределами области графика, или в оптимальном, автоматически рассчитанном месте на холсте.Планируются эти и другие улучшения.

Текст ярлыка

Внешний вид меток легенды контролируется набором Свойства текста с префиксом label_ . Например, чтобы установить шрифт стиль этикеток, используйте label_text_font_style .

 импортировать numpy как np
from bokeh.plotting import output_file, figure, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_labels.html")

p = цифра ()

p.circle (x, y, legend = "sin (x)")
п.line (x, y, legend = "sin (x)")

p.line (x, 2 * y, legend = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend = "3 * sin (x)", fill_color = None, line_color = "green")
p.line (x, 3 * y, legend = "3 * sin (x)", line_color = "green")

p.legend.label_text_font = "раз"
p.legend.label_text_font_style = "курсив"
p.legend.label_text_color = "темно-синий"

показать (p)
 

Граница

Внешний вид границы легенды контролируется набором Свойства линии с префиксом border_ .Например, чтобы установить цвет границы используйте border_line_color . Чтобы сделать границу невидимой, установите цвет линии границы на Нет .

 импортировать numpy как np
from bokeh.plotting import output_file, figure, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_border.html")

p = цифра ()

p.circle (x, y, legend = "sin (x)")
p.line (x, y, legend = "sin (x)")

p.line (x, 2 * y, legend = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

п.квадрат (x, 3 * y, legend = "3 * sin (x)", fill_color = None, line_color = "green")
p.line (x, 3 * y, legend = "3 * sin (x)", line_color = "green")

p.legend.border_line_width = 3
p.legend.border_line_color = "темно-синий"
p.legend.border_line_alpha = 0,5

показать (p)
 

Фон

Внешний вид фона легенды контролируется коллекцией свойств заливки с префиксом background_ . Например, чтобы установить цвет фона, используйте background_fill_color .Сделать фон прозрачный, установите background_fill_alpha на 0 .

 импортировать numpy как np
from bokeh.plotting import output_file, figure, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

output_file ("legend_background.html")

p = цифра ()

p.circle (x, y, legend = "sin (x)")
p.line (x, y, legend = "sin (x)")

p.line (x, 2 * y, legend = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend = "3 * sin (x)", fill_color = None, line_color = "green")
п.line (x, 3 * y, legend = "3 * sin (x)", line_color = "green")

# 3 * кривая sin (x) должна находиться под этой легендой при первоначальном просмотре, поэтому
# мы видим, что легенда прозрачна
p.legend.location = "bottom_right"
p.legend.background_fill_color = "темно-синий"
p.legend.background_fill_alpha = 0,5

показать (p)
 

Размеры

Есть несколько свойств, которые можно использовать для управления макетом, интервал и т. д. компонентов легенды:

label_standoff

тип собственности: label_standoff: Int

Расстояние (в пикселях), чтобы отделить подпись от связанного с ней глифа.

ширина_метки

тип свойства: label_width: Int

Ширина (в пикселях) области, которую должны занимать подписи легенды.

label_height

тип собственности: label_height: Int

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

ширина_глифа

тип свойства: glyph_width: Int

Ширина (в пикселях), которую должен занимать отрисованный глиф легенды.

glyph_height

тип свойства: glyph_height: Int

Высота (в пикселях), которую должен занимать отображаемый глиф легенды.

legend_padding

тип свойства: legend_padding: Int

Количество отступов вокруг легенды.

интервал легенды

тип свойства: legend_spacing: Int

Интервал между записями легенды.

 импортировать numpy как np
from bokeh.plotting import output_file, figure, show

x = np.linspace (0, 4 * np.pi, 100)
у = np.sin (х)

выходной_файл ("legend_labels.html")

p = цифра ()

p.circle (x, y, legend = "sin (x)")
p.line (x, y, legend = "sin (x)")

p.line (x, 2 * y, legend = "2 * sin (x)",
       line_dash = [4, 4], line_color = "оранжевый", line_width = 2)

p.square (x, 3 * y, legend = "3 * sin (x)", fill_color = None, line_color = "green")
p.line (x, 3 * y, legend = "3 * sin (x)", line_color = "green")

p.legend.label_standoff = 5
п.legend.glyph_width = 50
p.legend.legend_spacing = 10
p.legend.legend_padding = 50

показать (p)
 

боке / styling.rst в ветке-3.0 · боке / боке · GitHub

Использование тем

Темы

Bokeh - это набор предопределенных параметров дизайна, которые вы можете применить к ваши сюжеты. Темы могут включать настройки таких параметров, как цвета, шрифты, или стили линий.

Применение встроенных тем боке

Bokeh поставляется с пятью: ref: `встроенными темами ` для быстрого изменения внешний вид одного или нескольких участков: калибр , dark_minimal , light_minimal , night_sky и контраст .

Чтобы использовать одну из встроенных тем, назначьте название темы, которую вы хотите использовать. в свойство темы вашего документа.

Например:

 .. боке-сюжет ::
    : исходная позиция: выше

    из bokeh.io импорт творога
    from bokeh.plotting import figure, output_file, show

    x = [1, 2, 3, 4, 5]
    y = [6, 7, 6, 4, 5]

    выходной_файл ("dark_minimal.html")

    curdoc (). theme = 'dark_minimal'

    p = фигура (title = 'dark_minimal', ширина = 300, высота = 300)
    п.линия (x, y)

    показать (p)

 

Дополнительные примеры и подробную информацию см. В: class: `bokeh.themes`.

Создание собственных тем

Темы в боке определены в файлах YAML или JSON. Чтобы создать свою собственную тему файлы, следуйте формату, определенному в: class: `bokeh.themes.Theme`.

Используя YAML, например:

 атрибутов:
    Фигура:
        background_fill_color: '# 2F2F2F'
        border_fill_color: '# 2F2F2F'
        Outline_line_color: '# 444444'
    Ось:
        цвет_оси_линии: !! нуль
    Сетка:
        grid_line_dash: [6, 4]
        grid_line_alpha:.3
    Заголовок:
        text_color: "белый" 

Чтобы использовать собственную тему в графике боке, загрузите файл YAML или JSON в : class: `bokeh.themes.Theme` объект:

 из bokeh.themes import Theme
curdoc (). theme = Theme (filename = "./ theme.yml") 

Использование палитр

Палитры - это последовательности шестнадцатеричных строк RGB (A), которые определяют цветовую карту. В последовательности, которые вы используете для определения цветовых карт, могут быть списками или кортежами. Однажды ты создали цветовую карту, вы можете использовать ее с атрибутом цвета многих сюжетные объекты из | боке.черчение |,

Bokeh включает несколько предустановленных палитр, например стандартную палитру Брюера. палитры. Чтобы использовать одну из этих предопределенных палитр, импортируйте ее из боке. Палитры модуль. Например, при импорте "Spectral6" Боке дает вы получаете доступ к шестиэлементному списку шестнадцатеричных строк RGB (A) из Brewer Цветовая карта "Spectral":

 >>> из bokeh.palettes import Spectral6
>>> Spectral6
['# 3288bd', '# 99d594', '# e6f598', '# fee08b', '# fc8d59', '# d53e4f'] 

Список всех стандартных палитр, включенных в боке, см. : ref: `боке.палитры`.

Вы также можете создавать собственные палитры, определяя последовательность шестнадцатеричных значений RGB (A). струны сами.

Использование картографов

Используйте преобразователи цвета Bokeh для кодирования последовательности данных в палитру цветов которые основаны на значениях в этой последовательности. Затем вы можете установить маркер Атрибут цвета объекта в вашем цветовом картографе. Боке включает несколько видов мапперов для кодирования цветов:

  • | factor_cmap |: сопоставляет цвета с определенными категориальными элементами.Смотрите: ref: `userguide_categorical` для более подробной информации.

  • : func: `~ bokeh.transform.linear_cmap`: отображает диапазон числовых значений в доступные цвета от высокого до низкого. Например, диапазон [0,99] с учетом цвета ['красный', 'зеленый', 'синий'] будут сопоставлены следующим образом:

     x <0: 'красный' # значения  = x <33: 'красный'
    33> = x <66: 'зеленый'
    66> = x <99: 'синий'
    99> = x: 'blue' # значения> high фиксируются
     
  • : func: `~ боке.transform.log_cmap`: аналогично linear_cmap , но использует естественный шкала журнала для отображения цветов.

Эти функции отображения возвращают свойство DataSpec . Передайте это свойство в атрибут цвета глифа, с которым вы хотите его использовать.

Спецификация данных, возвращаемая функцией сопоставления, включает bokeh.transform . Вы можете получить доступ к этим данным, чтобы использовать результат функции сопоставления в другом контекст. Чтобы создать ColorBar , например:

.. bokeh-plot :: docs / user_guide / examples / styling_linear_mappers.py
    : исходная позиция: выше

 

Настройка визуальных свойств

Чтобы стилизовать визуальные атрибуты графиков боке, вам нужно знать, что доступные свойства есть. Полное | справочное руководство | содержит все свойства каждый объект индивидуально. Однако есть три группы свойств, которые у многих объектов есть что-то общее. Их:

  • свойства линии : цвет, ширина линии и т. Д.
  • свойства заливки : цвет заливки, альфа и т. Д.
  • свойства текста : стили шрифтов, цвета и т. Д.

В этом разделе содержится более подробная информация о некоторых наиболее распространенных свойствах.

Линия недвижимости

Свойства заливки

Люк

Свойства текста

Видимая собственность

Средства визуализации глифов, оси, сетки и аннотации имеют свойство visible . Используйте это свойство, чтобы включать и выключать их.

 .. bokeh-plot :: docs / user_guide / examples / styling_visible_property.ру
    : исходная позиция: выше

 

Это может быть особенно полезно в интерактивных примерах с сервером Bokeh или CustomJS.

 .. bokeh-plot :: docs / user_guide / examples / styling_visible_annotation_with_interaction.py
    : исходная позиция: выше

 

Свойства цвета

Объекты боке имеют несколько свойств, связанных с цветами. Используйте этот цвет например, для управления внешним видом линий, заливок или текста.

Используйте одну из следующих опций, чтобы определить цвета в боке:

  • Любой из | названных цветов CSS |, например «зеленый» или «индиго» .Вы можете также используйте дополнительное имя 'transparent' (равно '# 00000000' ).
  • Шестнадцатеричное значение RGB (A), например '# FF0000' (без альфа-информации) или '# 44444444' (с альфа-информацией).
  • A CSS4 RGB () , RGBA () или HSL () цветная строка, например 'rgb (0 127 0 / 1.0)' , 'rgba (255, 0, 127, 0,6)' , или 'hsl (60 градусов 100% 50% / 1,0)' .
  • Набор из трех целых чисел (r, g, b) (где r , g и b - целые числа от 0 до 255).
  • 4-кортеж из (r, g, b, a) (где r , g и b - целые числа от 0 255 и , - это значение с плавающей запятой от 0 до 1).
  • 32-разрядное целое число без знака, представляющее значения RGBA в 0xRRGGBBAA Шаблон порядка байтов, например 0xffff00ff или 0xff0000ff .

Чтобы определить серию цветов, используйте массив данных о цвете, например список или столбец | ColumnDataSource |.Это также включает Массивы NumPy.

Например:

 .. bokeh-plot :: docs / user_guide / examples / styling_specifying_colors.py
    : исходная позиция: выше

 

В дополнение к указанию альфа-значения цвета при определении цвета сам, вы также можете установить альфа-значение отдельно, используя line_alpha или fill_alpha свойства глифа.

Если вы определяете цвет с альфа-значением, а также явно предоставляете значение альфа через свойство line_alpha или fill_alpha одновременно время происходит следующее: Если ваше определение цвета действительно включает альфа-канал значение (например, '# 00FF0044' или 'rgba (255, 0, 127, 0.6) '), это альфа значение имеет приоритет над альфа-значением, которое вы предоставляете через объекты имущество. В противном случае используется значение альфа, определенное в свойстве объекта.

На следующем рисунке показаны все возможные комбинации использования RGB и Цвета RGBA вместе со свойствами line_alpha или fill_alpha :

 .. bokeh-plot :: docs / user_guide / examples / styling_specifying_colors_properties.py
    : исходная позиция: нет

 

Примечание

Если вы используете : ref: `Интерфейс рисования Bokeh `, вы также есть возможность указать цвет и / или альфа в качестве ключевых слов, когда вызов метода рендеринга.Боке автоматически применяет эти значения к соответствующие заполните и строку свойств ваших глифов.

У вас все еще есть возможность указать дополнительные fill_color , Также аргументы fill_alpha , line_color и line_alpha . В В этом случае первое имеет приоритет.

Блоки экрана и блоки пространства данных

При настройке визуальных свойств объектов Bokeh вы используете либо экранные единицы, либо единиц пространства данных:

  • Блоки экрана используют необработанные числа пикселей для указания высоты или ширины
  • Единицы пространства данных относительно данных и осей графика

Возьмите график размером 400 на 400 пикселей с осями x и y в диапазоне от 0 через 10, например.Глиф в пятую часть ширины и высоты графика. будет иметь размер 80 экранных единиц или 2 единицы пространства данных.

Объекты в боке, которые обычно поддерживают как экранные единицы, так и единицы пространства данных есть специальное свойство, чтобы выбрать, какую единицу использовать. Этот блок-постановка property - это имя свойства с добавленными _units . Для пример: A: class: `~ bokeh.models.annotations.Whisker` : ref: `annotation ` имеет свойство upper .К определите, какую единицу использовать, установите для свойства upper_units либо «экран» или «данные» .

Выбор сюжетных объектов

Если вы хотите настроить внешний вид любого элемента вашего графика боке, вы Сначала необходимо определить, какой объект вы хотите изменить. Как описано в : ref: `userguide_concepts`, графики боке - это комбинация объектов Python, которые представляют все различные части вашего сюжета: его сетки, оси и глифы, для пример.

У некоторых объектов есть удобные методы, которые помогут вам идентифицировать нужные вам объекты. адресовать. См. Разделы «Оси стилей», «Сетки стилей» и «Легенды стилей». Примеры.

Для запроса любого графического объекта Bokeh используйте | select | методом на | Сюжет |. Для Например, чтобы найти все объекты PanTool на графике:

 >>> p.select (type = PanTool)
[] 

Вы также можете использовать | select | метод для запроса и по другим атрибутам:

 >>> стр.круг (0, 0, name = "mycircle")


>>> p.select (name = "mycircle")
[] 

Этот метод запроса может быть особенно полезен, если вы хотите стилизовать визуальный атрибуты стилизованных глифов.

Укладка участков

Помимо отдельных элементов графика, | Участок | сам объект также имеет несколько визуальных характеристик, которые вы можете настроить: размеры сюжет, его фон, границы или очертания, например.В этом разделе описывается как изменить эти атрибуты графика боке.

В примере кода в основном используется | bokeh.plotting | интерфейс для создания сюжетов. Однако инструкции применимы независимо от того, как был создан график боке.

Размеры

Чтобы изменить ширину и высоту | Plot |, используйте его width и высота атрибутов. Эти два атрибута используют | экранные единицы |. Они контролировать размер всей области холста, включая любые оси или заголовки (но не панель инструментов).

Если вы используете | bokeh.plotting | интерфейс, вы можете передать эти значения в | рисунок | напрямую:

 .. bokeh-plot :: docs / user_guide / examples / styling_dimensions.py
    : исходная позиция: выше

 

Адаптивные размеры

Для автоматической регулировки ширины или высоты вашего участка относительно свободного места в браузере, используйте график : class: свойство `~ bokeh.models.plots.Plot.sizing_mode`.

Чтобы управлять масштабированием графика для заполнения контейнера, см. Документацию для : ref: `боке.models.layouts`, в частности свойство sizing_mode для : class: `~ bokeh.models.layouts.LayoutDOM`.

Если вы установите sizing_mode на любое значение, отличное от fixed , Bokeh настраивается ширина и высота , как только график визуализируется. Тем не мение, Боке использует ширину и высоту для расчета начального аспекта. соотношение вашего сюжета.

Графики будут уменьшаться только до минимального значения 100 пикселей (высота или ширина), чтобы предотвратить проблемы с отображением вашего сюжета.

Название

Чтобы стилизовать заголовок вашего сюжета, используйте | Заголовок | аннотация, которая доступна как свойство .title | Участок |.

Вы можете использовать большинство стандартных | свойств текста |. Однако text_align и text_baseline не применяются. Позиционировать заголовок относительно всего plot используйте свойства: class: `~ bokeh.models.annotations.Title.align` и : class: `~ bokeh.models.annotations.Title.offset`.

В качестве примера, чтобы установить цвет и стиль шрифта текста заголовка, используйте участок.title.text_color :

 .. bokeh-plot :: docs / user_guide / examples / styling_title.py
    : исходная позиция: выше

 

Фон

Чтобы изменить стиль заливки фона, настройте background_fill_color и background_fill_alpha объектов недвижимости | Участок | объект:

 .. bokeh-plot :: docs / user_guide / examples / styling_background_fill.py
    : исходная позиция: выше

 

Граница

Чтобы настроить стиль заливки границы, используйте border_fill_color и border_fill_alpha объектов недвижимости | Участок | объект.Вы также можете установить минимальная граница с каждой стороны (в | единицах экрана |) со следующими свойствами:

  • min_border_left
  • min_border_right
  • min_border_top
  • min_border_bottom

Кроме того, если вы установите min_border , Bokeh применяет минимальную настройку границы со всех сторон для удобства. Значение по умолчанию min_border - 40 пикселей.

 .. bokeh-plot :: docs / user_guide / examples / styling_min_border.ру
    : исходная позиция: выше

 

Наброски

Боке | Сюжет | объекты имеют различные | свойства линии |. Чтобы изменить внешний вид outlines, используйте те свойства линии, которые имеют префикс outline_ .

Например, чтобы установить цвет контура, используйте outline_line_color :

 .. bokeh-plot :: docs / user_guide / examples / styling_plot_outline_line_color.py
    : исходная позиция: выше

 

Стилизация глифов

Чтобы стилизовать свойства заливки, линии или текста глифа, сначала необходимо определите, какой GlyphRenderer вы хотите настроить.Если вы используете | bokeh.plotting | интерфейс, функции глифов возвращают средство визуализации:

 >>> r = p.circle ([1,2,3,4,5], [2,5,8,2,7])
>>> г
 

Затем получите сам глиф из атрибута .glyph объекта GlyphRenderer :

 >>> r. Глиф
 

Это объект, для которого задаются значения свойств заливки, линии или текста:

.. bokeh-plot :: docs / user_guide / examples / styling_glyph_properties.py
    : исходная позиция: выше

 

Выбранные и невыделенные глифы

Чтобы настроить стиль выбранных и невыбранных глифов, установите | selection_glyph | и | nonselection_glyph | атрибуты | GlyphRenderer |. Вы можете установить их вручную или передать их в | add_glyph |.

На графике ниже используется | bokeh.plotting | интерфейс для установки этих атрибутов. Щелкните или коснитесь любого кружка на графике, чтобы увидеть эффект на выбранном и невыбранные глифы.Чтобы очистить выделение и восстановить исходное состояние, щелкните в любом месте графика за пределами круга.

 .. bokeh-plot :: docs / user_guide / examples / styling_glyph_selections_plotting_glyph.py
    : исходная позиция: выше

 

Если вам просто нужно установить цвет или альфа-параметры выбранного или невыбранные глифы, укажите цвет и альфа-аргументы функции глифа, с префиксом "selection_" или "nonselection_" :

 .. bokeh-plot :: docs / user_guide / examples / styling_glyph_selections_plotting_params.ру
    : исходная позиция: выше

 

Если вы используете | bokeh.models | интерфейс, используйте : func: функция `~ bokeh.models.plots.Plot.add_glyph`:

 p = участок ()
источник = ColumnDataSource (dict (x = [1, 2, 3], y = [1, 2, 3]))

initial_circle = Круг (x = 'x', y = 'y', fill_color = 'blue', size = 50)
selected_circle = Круг (fill_alpha = 1, fill_color = "firebrick", line_color = None)
nonselected_circle = Круг (fill_alpha = 0,2, fill_color = "синий", line_color = "огнеупорный кирпич")

p.add_glyph (источник,
            initial_circle,
            selection_glyph = выбранный_круг,
            nonselection_glyph = nonselected_circle) 

Примечание

При рендеринге Боке учитывает только визуальных свойств selection_glyph и nonselection_glyph .Изменение позиции, размеры и т. д. не будут иметь никакого эффекта.

Осмотр при зависании

Чтобы стилизовать внешний вид глифов, над которыми наведен курсор, передайте цвет или альфа-канал. параметры с префиксом "hover_" для вашей функции рендеринга.

Или установите | selection_glyph | и | nonselection_glyph | атрибуты | GlyphRenderer |, как в : ref: `userguide_styling_selected_unselected_glyphs` выше.

В этом примере используется первый метод передачи параметра цвета с "hover_" префикс:

.. bokeh-plot :: docs / user_guide / examples / styling_glyph_hover.py
    : исходная позиция: выше

 

Примечание

При рендеринге Боке учитывает только визуальных свойств hover_glyph . Изменение положения, размеров и т. Д. Не повлияет.

Накладки для инструментов для укладки

Некоторые инструменты боке также имеют настраиваемые визуальные атрибуты.

Например, все инструменты выбора области и инструмент масштабирования прямоугольника имеют оверлей .Чтобы стилизовать их свойства линии и заливки, передайте значения в соответствующие атрибуты:

 .. bokeh-plot :: docs / user_guide / examples / styling_tool_overlays.py
    : исходная позиция: выше

 

Для получения дополнительной информации см. Записи справочного руководства для : class: `BoxSelectTool.overlay `, : class: `BoxZoomTool.overlay `, : class: `LassoSelectTool.overlay `, : class: `PolySelectTool.overlay `и : class: `RangeTool.overlay `.

Переключение панели инструментов автоскрытие

Чтобы ваша панель инструментов скрывалась автоматически, установите : class: `~ bokeh.models.tools.Toolbar.autohide` в True. Когда вы устанавливаете autohide в True, панель инструментов видна, только когда мышь находится внутри площадь участка и в противном случае скрыта.

 .. bokeh-plot :: docs / user_guide / examples / styling_toolbar_autohide.ру
    : исходная позиция: выше


 

Оси для укладки

Этот раздел посвящен изменению различных визуальных свойств осей графика боке.

Чтобы установить атрибуты стиля для объектов Axis, используйте | xaxis |, | yaxis | и | ось | методы на | участке | чтобы сначала получить объекты оси графика. Например:

 >>> ось оси
[] 

Поскольку может быть более одной оси, этот метод возвращает список осей объекты.Однако для удобства эти списки разделяются на . Это означает, что вы можете установить атрибуты непосредственно на этом результате, и атрибуты будут применяется ко всем осям в списке. Например:

 p.xaxis.axis_label = "Температура" 

Это изменяет значение axis_label для каждой оси x p , однако их может быть много.

Пример ниже демонстрирует использование | xaxis |, | yaxis | и | ось | методов подробнее:

.. bokeh-plot :: docs / user_guide / examples / styling_axis_properties.py
    : исходная позиция: выше

 

Этикетки

Чтобы добавить или изменить текст общей метки оси, используйте axis_label имущество. Чтобы добавить разрывы строк к тексту в метке оси, включите \ n в ваша строка.

Для управления внешним видом текста этикетки используйте любой из стандартных | свойства текста | с префиксом axis_label_ . Например, чтобы установить текст цвет метки установите axis_label_text_color .

Чтобы изменить расстояние между меткой оси и метками основных делений, установите axis_label_standoff недвижимость.

Например:

 .. bokeh-plot :: docs / user_guide / examples / styling_labels.py
    : исходная позиция: выше

 

Границы

Чтобы ограничить границы рисования осей, установите свойство bounds оси. объект в кортеж из двух чисел (начало, конец) :

 .. bokeh-plot :: docs / user_guide / examples / styling_bounds.ру
    : исходная позиция: выше

 

Расположение отметок

Bokeh использует несколько моделей "бегущей строки", чтобы решить, где отображать отметки на осях. (категориальная, дата-время, меркатор, линейная или логарифмическая шкала). Чтобы настроить для размещения отметок используйте свойство оси .ticker .

Если вы используете | bokeh.plotting | интерфейс, Bokeh выбирает подходящий тикер модель размещения автоматически.

Если вам нужно указать, какую модель размещения тикера использовать, вы также можете явно определите список местоположений отметок.Назначать : class: `~ bokeh.models.tickers.FixedTicker` со списком местоположений отметок для ось:

 из боке. Построение импортного рисунка
из bokeh.models.tickers импортировать FixedTicker

p = цифра ()

# на оси x не будут отображаться дополнительные отметки.
p.xaxis.ticker = FixedTicker (тики = [10, 20, 37.4]) 

В качестве ярлыка вы также можете указать список меток непосредственно на оси ' тикер недвижимость:

 .. bokeh-plot :: docs / user_guide / examples / styling_fixed_ticker.ру
    : исходная позиция: выше

 

Тиковые линии

Чтобы контролировать внешний вид основных и второстепенных отметок, установите соответствующие | свойства строки | с префиксом major_tick_ и minor_tick_ соответственно.

Например, чтобы установить цвет основных меток, используйте major_tick_line_color . Чтобы скрыть любой набор меток, установите цвет на Нет .

Кроме того, чтобы контролировать, насколько далеко в области построения и вне области построения метки расширить, используйте свойства major_tick_in / major_tick_out и minor_tick_in / minor_tick_out .Эти значения указаны в | единицах экрана |. Следовательно, вы можете использовать отрицательные значения.

 .. bokeh-plot :: docs / user_guide / examples / styling_tick_lines.py
    : исходная позиция: выше

 

Форматы этикеток в виде клещей

Чтобы стилизовать текст меток осей, используйте объект TickFormatter оси ' форматтер свойство. Bokeh по умолчанию использует несколько средств форматирования тикера. разные ситуации:

Эти средства форматирования меток по умолчанию не предоставляют многих настраиваемых свойств.Чтобы управлять форматированием галочки на более детальном уровне, используйте один из | NumeralTickFormatter | или | PrintfTickFormatter | описано ниже.

Примечание

Для замены модуля форматирования на оси необходимо установить модуль форматирования свойство на реальном объекте Axis , а не в разделяемом списке. Это почему в следующих примерах используется p.yaxis [0] .formatter и т. д. (с индекс [0] ).

NumeralTickFormatter

| NumeralTickFormatter | имеет свойство формата , которое можно использовать для управления форматированием текста делений оси.

 .. bokeh-plot :: docs / user_guide / examples / styling_numerical_tick_formatter.py
    : исходная позиция: выше

 

Доступно множество дополнительных форматов. Полный текст | NumeralTickFormatter | документацию в | справочном руководстве |.

PrintfTickFormatter

| PrintfTickFormatter | имеет свойство формата , которое можно использовать для управления форматированием текста отметок оси с использованием стиля printf форматировать строки.

.. bokeh-plot :: docs / user_guide / examples / styling_printf_tick_formatter.py
    : исходная позиция: выше

 

Для получения полной информации о форматах см. Полную версию | PrintfTickFormatter | документацию в | справочном руководстве |.

CustomJSTickFormatter

Чтобы полностью настроить формат отметок оси, используйте | CustomJSTickFormatter | в сочетание с фрагментом кода JavaScript в качестве его свойства code .

Переменная тика содержит неформатированное значение тика.Это доступно в пространство имен фрагмента или функции во время рендеринга:

 .. bokeh-plot :: docs / user_guide / examples / styling_custom_js_tick_formatter.py
    : исходная позиция: выше

 

Отметьте ориентацию этикетки

Для управления ориентацией меток основных отметок используйте major_label_orientation недвижимость. Это свойство принимает значения «по горизонтали» или «по вертикали» или число с плавающей запятой что дает угол (в радианах) для поворота от горизонтали:

.. bokeh-plot :: docs / user_guide / examples / styling_tick_label_orientation.py
    : исходная позиция: выше

 

Примечание

Есть и другие свойства, которые можно использовать для настройки осей боке. Для полный список всех различных атрибутов, которые вы можете установить на разных типы осей боке см. в разделе: ref: `bokeh.models.axes` | справочное руководство |.

Решетки для укладки

В этом разделе вы узнаете, как настроить визуальные свойства сетки. линии и полосы сетки на графиках боке.

Чтобы получить объекты сетки графика, используйте | xgrid |, | ygrid | и | grid | методы на | Участок |. Это работает аналогично удобным методам для осей:

 >>> стр. Сетка
[,
 ] 

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

Примечание

Свойство xgrid предоставляет объекты сетки, которые пересекают Ось x (имеется в виду вертикально ориентированные объекты).Соответственно ygrid предоставляет сеточные объекты, которые пересекают ось Y (то есть горизонтально ориентированные объекты).

Строки

Чтобы настроить внешний вид линий сетки, используйте набор | свойства линии | с префиксом grid_ .

Например, чтобы установить цвет линий сетки, используйте grid_line_color . Прятаться линии сетки, установите для них цвет линии Нет :

 .. bokeh-plot :: docs / user_guide / examples / styling_grid_lines.ру
    : исходная позиция: выше

 

Второстепенные строки

Чтобы настроить внешний вид второстепенных линий сетки, используйте набор | свойства строки | с префиксом minor_grid_ .

Например, чтобы установить цвет линий сетки, используйте minor_grid_line_color . К по умолчанию второстепенные линии сетки скрыты (это означает, что цвет их линий установлен на Нет ):

 .. bokeh-plot :: docs / user_guide / examples / styling_minor_grid_lines.py
    : исходная позиция: выше

 

Полосы

Используйте «полосы» для отображения закрашенных, затемненных полос между соседними линиями сетки.К контролировать внешний вид этих полос, использовать набор | свойства заливки | и | свойства штриховки | с префиксом band_ .

Например, чтобы установить цвет полос сетки, используйте band_fill_color . Прятаться сетки, установите для них цвет заливки Нет (это значение по умолчанию).

В этом примере определяются полосы, заполненные сплошным цветом:

 .. bokeh-plot :: docs / user_guide / examples / styling_grid_band_fill.py
    : исходная позиция: выше

 

В этом примере используются полосы, заполненные штриховкой:

.. bokeh-plot :: docs / user_guide / examples / styling_grid_band_hatch.py
    : исходная позиция: выше

 

Границы

Чтобы установить явные границы, ограничивающие место рисования сеток, используйте 2-кортеж (начало, конец) . Это идентично настройке : ref: `границы для осей `:

 .. bokeh-plot :: docs / user_guide / examples / styling_grid_bounds.py
    : исходная позиция: выше


 

Примечание

Есть и другие свойства, которые сетки Боке поддерживают настройку.Для полный список всех различных атрибутов, которые можно установить на боке для построения сеток обратитесь к разделу: ref: `bokeh.models.grids` в | справочное руководство |.

Легенды стиля

Подобно удобным методам для осей и сеток, есть : func: метод `~ bokeh.models.plots.Plot.legend` на | Plot | что вы можете использовать для | получить сюжет | Легенда | объектов:

bokeh.models.plots.Plot.legend

 >>> p.legend
[] 

Этот метод также возвращает разделяемый список.Следовательно, вы можете установить атрибут в списке, как если бы это был один объект, и атрибут был изменен для каждого элемента списка:

 p.legend.label_text_font = "times" 

Расположение

Для управления расположением меток легенды используйте свойство location .

Внутри участка

Для легенд в центральной области макета, например созданных автоматически с помощью | bokeh.plotting |, установите location на одно из следующих значения:

"верх_влево"

"верх_центр"

"top_right" (по умолчанию)

"center_right"

"bottom_right"

"нижний_центр"

"bottom_left"

"center_left"

«центр»

или (x, y) кортеж, указывающий абсолютное местоположение в координатах экрана (в пикселях от левого нижнего угла).

 .. bokeh-plot :: docs / user_guide / examples / styling_legend_location.py
    : исходная позиция: выше

 
Вне участка

Чтобы разместить легенду за пределами центральной области, используйте метод add_layout из Участок. Для этого необходимо создать | Легенду | объект напрямую:

 .. bokeh-plot :: docs / user_guide / examples / styling_legend_location_outside.py
    : исходная позиция: выше

 

В этом случае вам необходимо указать местоположение легенды в абсолютном выражении.В будущих выпусках будут добавлены дополнительные параметры для настройки положения легенды.

Название

Чтобы добавить или изменить заголовок легенды, используйте его title property:

 plot.legend.title = "Division" 

Для управления внешним видом заголовка легенды используйте любой из стандартных | свойства текста | с префиксом title_ . Например, чтобы установить шрифт стиль легенды используйте title_text_font_style .

Чтобы установить расстояние между заголовком и остальной частью легенды (в пикселях), используйте свойство title_standoff .

 .. bokeh-plot :: docs / user_guide / examples / styling_legend_title.py
    : исходная позиция: выше

 

Ориентация

Для управления ориентацией легенды используйте свойство direction . Допустимые значения для этого свойства:

.

Ориентация по умолчанию - "вертикальная" .

 .. bokeh-plot :: docs / user_guide / examples / styling_legend_orientation.py
    : исходная позиция: выше

 

Текст этикетки

Для управления внешним видом меток легенды используйте любой из стандартных | свойства текста | с префиксом label_ .Например, чтобы установить шрифт стиль этикеток, используйте label_text_font_style .

 .. bokeh-plot :: docs / user_guide / examples / styling_legend_label_text.py
    : исходная позиция: выше

 

Граница

Для управления внешним видом границы легенды используйте набор | свойства строки | с префиксом border_ . Например, чтобы установить цвет границы используйте border_line_color . Чтобы сделать границу невидимой, установите цвет линии границы на Нет .

 .. bokeh-plot :: docs / user_guide / examples / styling_legend_border.py
    : исходная позиция: выше

 

Фон

Для управления внешним видом фона легенды используйте коллекцию of | fill properties | с префиксом background_ . Например, чтобы установить цвет фона, используйте background_fill_color . Сделать фон прозрачный, установите background_fill_alpha на 0 .

 .. bokeh-plot :: docs / user_guide / examples / styling_legend_background.ру
    : исходная позиция: выше

 

Размеры

Для управления такими размерами, как расположение или расстояние между компонентами этикеток, используйте следующие свойства:

Есть несколько свойств, которые можно использовать для управления макетом, интервал и т. д. компонентов легенды:

 .. bokeh-prop :: Legend.label_standoff
    : module: bokeh.models.annotations

 
 .. bokeh-prop :: Legend.label_width
    : module: bokeh.models.annotations

 
 .. боке-опора :: Легенда.label_height
    : module: bokeh.models.annotations

 
 .. bokeh-prop :: Legend.glyph_width
    : module: bokeh.models.annotations

 
 .. bokeh-prop :: Legend.glyph_height
    : module: bokeh.models.annotations

 
 .. bokeh-prop :: Legend.padding
    : module: bokeh.models.annotations

 
 .. bokeh-prop :: Legend.spacing
    : module: bokeh.models.annotations

 
 .. bokeh-prop :: Legend.margin
    : module: bokeh.models.annotations


 
.. bokeh-plot :: docs / user_guide / examples / styling_legend_dimensions.py
    : исходная позиция: выше

 

Установка уровней рендеринга

Чтобы указать порядок, в котором отрисовываются объекты, используйте одну из следующих визуализаций уровней:

image: «самый низкий» уровень рендеринга, отрисовывается перед всем остальным
подложка: уровень рендеринга по умолчанию для сеток
глиф: уровень рендеринга по умолчанию для всех глифов (что означает, что они нарисованы над сетками)
аннотация: уровень рендеринга по умолчанию для рендереров аннотаций
оверлей: «высший» уровень рендеринга, для наложений инструментов

В пределах данного уровня средства визуализации отображаются в том порядке, в котором они были добавлены.

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

Например, чтобы убедиться, что изображение отображается на под линиями сетки, назначьте от уровня рендеринга «изображение» до аргумента уровня при вызове вашего изображение средство визуализации:

 p.image (..., level = "image") 

Вы можете увидеть полный пример с выводом в разделе : ref: `userguide_plotting_images_colormapped`.

Добавление математических обозначений

Bokeh поддерживает математические обозначения, выраженные в разметке LaTeX и MathML. языки с растущим числом элементов.В настоящее время вы можете использовать LaTeX и нотации MathML с: ref: `метки осей ` и отметьте метки, используя: func: `~ bokeh.models.Axis.major_label_overrides`. Вы можете также используйте LaTeX с: class: `div ` или : class: `виджеты абзацев `.

Bokeh использует библиотеку MathJax для обработки LaTeX и MathML. См. Официальное Документация MathJax для получения дополнительной информации о MathJax. Если вы используете | компоненты | не забудьте включить ресурс bokeh-mathjax- в ваш шаблон html.

LaTeX

Чтобы использовать нотацию LaTeX, вы можете передать строку напрямую в любой поддерживаемый элемент. Эта строка должна начинаться и заканчиваться одним из Разделители по умолчанию MathJax. Эти разделители: $$ ... $$ , \ [... \] , и \ (... \) . Например: r "$$ \ sin (x) $$" .

Этикетки LaTeX и оси

Чтобы использовать нотацию LaTeX в качестве метки оси, передайте начало необработанного строкового литерала и заканчивается разделителями по умолчанию MathJax и содержит нотацию LaTeX в: class: `~ боке.models.Axis.axis_label` свойство оси. Для пример:

 .. bokeh-plot :: docs / user_guide / examples / styling_math_text_latex_axis_labels.py
    : исходная позиция: выше

 
LaTeX и метки для галочки

Чтобы добавить обозначения LaTeX к вашим меткам, используйте : func: функция `~ bokeh.models.Axis.major_label_overrides` с осью.

Эта функция используется для замены значений существующих меток галочки на пользовательские. текст. Он принимает словарь с исходным значением метки галочки в качестве ключ и ваше пользовательское значение в качестве значения dict.

Используйте эту функцию для замены любых текстовых меток галочки с нотацией LaTeX:

 .. bokeh-plot :: docs / user_guide / examples / styling_math_text_latex_tick_labels.py
    : исходная позиция: выше

 
LaTeX с виджетами разделов и абзацев

Чтобы включить обозначение LaTeX в текст : class: `div widget ` или: class: `виджет абзаца `, используйте стандартные разделители MathJax по умолчанию в любом месте вашей строки:

.. bokeh-plot :: docs / user_guide / examples / styling_math_text_latex_div_widget.py
    : исходная позиция: выше

 

Чтобы отключить рендеринг LaTeX для виджета div или абзаца, установите для виджета disable_math значение True.

У вас также есть возможность использовать расширения LaTeX, включенные в MathJax. Например, используйте расширение цвета, чтобы изменить цвет визуализированного Обозначение LaTeX: \ color {white} \ sin (x) .

Примечание

Есть ограничения на то, сколько LaTeX MathJax поддерживает.Видеть Подробнее об отличиях от Actual TeX в документации MathJax.

MathML

Чтобы добавить математические обозначения, написанные на MathML, используйте Bokeh's : class: `~ bokeh.models.text.MathML` напрямую. Эта модель имеет текст свойство, которое принимает строку, содержащую MathML. Например:

 .. bokeh-plot :: docs / user_guide / examples / styling_math_text_mathml_axis_labels.py
    : исходная позиция: выше

 

Для получения дополнительной информации см .: class: `~ bokeh.models.text.MathML` в | справочное руководство |.

Python Bokeh - Построение линейного графика

Bokeh - это интерактивная визуализация данных Python. Он отображает свои графики с помощью HTML и JavaScript. Он нацелен на современные веб-браузеры для презентаций, обеспечивая элегантное, лаконичное построение новой графики с высокопроизводительной интерактивностью.

Боке можно использовать для построения линейного графика . Построение линейного графика может быть выполнено с использованием метода line () модуля plotting .

Внимание компьютерщик! Укрепите свои основы с помощью курса Python Programming Foundation и изучите основы.

Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS . И чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень

plotting.figure.line ()

Синтаксис: строка (параметры)


Параметры:

  • x: x-координаты точек для построения
  • y: y-координаты точек для построения
  • line_alpha: процентное значение линии альфа, по умолчанию 1
  • line_cap: значение окончание линии для линии, по умолчанию - стык
  • line_color: цвет линии, по умолчанию черный
  • line_dash: значение штрихового штриха, например:
    • сплошной
    • пунктирный
    • пунктирный
    • пунктирный
    • dashdot

    по умолчанию сплошной

  • line_dash_offset: значение смещения штрихового штриха, по умолчанию 0
  • line_join: значение соединение линии, по умолчанию со скосом
  • line_width: значение ширины линии, по умолчанию 1
  • name: пользовательское имя для модели
  • теги: пользовательские значения для этой модели

Другие параметры:

  • alpha: устанавливает сразу все аргументы ключевого слова alpha
  • color: устанавливает сразу все аргументы ключевого слова color
  • legend_field: имя столбца в источнике данных, который должен
  • legend_group: имя столбца в источнике данных, который должен использоваться
  • legend_label: отмечает запись легенды
  • приглушено: определяет, должен ли глиф отображаться как приглушенный или нет, по умолчанию Ложь
  • имя: необязательное имя, указанное пользователем, для присоединения к модулю рендеринга
  • источник: источник данных, предоставленный пользователем
  • 90 071 view: view для фильтрации источника данных
  • visible: определяет, должен ли глиф отображаться или нет, по умолчанию True
  • x_range_name: имя дополнительного диапазона для использования для сопоставления x-координат
  • y_range_name: имя дополнительного диапазона, используемого для сопоставления y-координат
  • level: указывает порядок уровней рендеринга для этого глифа

Возвращает: объект класса GlyphRenderer

Пример 1 : В этом примере мы будем использовать значения по умолчанию для построения графика.

из bokeh.plotting import рисунок, output_file, show

output_file ( "gfg.html) 910 9000 9000 9000 9000 9000 9000 график = рисунок (заголовок = «График линии боке» )

x = [ 1 , , , 3 , 4 , 5 ]

y = [ 1 , 6 , , , 3 ]

график.line (x, y)

показать (график)

Вывод:


Пример 2: В этом примере мы построим линейный график с пунктирными линиями наряду с другими параметрами.

из bokeh.plotting import рисунок, output_file, show

output_file ( "gfg.html " )

график = рисунок (заголовок = " Bokeh Line Graph " )

9000.axis.x = "ось x"

graph.yaxis.axis_label = "ось y"

x = [1 , 2 , 3 , 4 , 5 ]

y = [ 5 , 1 , 7 , 1 ]

line_color = «красный»

line_dash = «пунктирный»

line_dash_offset = 1

09 9 900

график.line (x, y,

line_color = line_color,

line_dash = line_dash,

_setdash смещение смещение смещение 9109 смещение 910 смещение 9

legend_label = legend_label)

показать (график)

Вывод:

840 940 Теперь мы увидим


  • 0 940 несколько линий на одном графике.Мы будем генерировать точки с помощью функции random () .

    из bokeh.plotting import figure, output_file, show

    import random

    10ml

    10g000 )

    график = рисунок (заголовок = «График боке» )

    график.xaxis.axis_label = «ось x»

    graph.yaxis.axis_label = «ось y»

    04 []

    y = []

    для i в диапазоне ( 100 ):

    x.append (i)

    для i в диапазоне ( 100 ):

    y.append ( 1 + random. random ))

    line_color = «красный»

    line_dash = «сплошной»

    label_label = 9005 9000 9000

    график.line (x, y,

    line_color = line_color,

    line_dash = line_dash,

    09 legend_lab)

    x = []

    y = []

    для i в диапазоне 100 ( )

    х.append (i)

    для i в диапазоне ( 100 ):

    y.append (random.random ())

    line_color = «зеленый»

    line_dash = «dotdash»

    line_dash_offset = 1

    9000lab 9001

    график.line (x, y,

    line_color = line_color,

    line_dash = line_dash,

    _setdash смещение смещение смещение 9109 смещение 910 смещение 9

    legend_label = legend_label)

    показать (график)

    Вывод:
    9000 Visualization Data Part 940 Начато | by Will Koehrsen

    Повысьте уровень своей игры визуализации

    Самый сложный статистический анализ может оказаться бессмысленным без эффективных средств передачи результатов.Этот момент был подтвержден недавним опытом, который я получил в моем исследовательском проекте, где мы используем науку о данных для повышения энергоэффективности зданий. В течение последних нескольких месяцев один из членов моей команды работал над техникой, называемой вейвлет-преобразованием, которая используется для анализа частотных компонентов временного ряда. Этот метод дает положительные результаты, но ей было трудно объяснить его, не потерявшись в технических деталях.

    Раздраженная, она спросила меня, могу ли я сделать наглядное изображение трансформации.За пару минут, используя пакет R под названием gganimate , я сделал простую анимацию, показывающую, как этот метод преобразует временной ряд. Теперь, вместо того, чтобы пытаться объяснить вейвлеты, член моей команды может показать клип, чтобы дать интуитивное представление о том, как работает техника. Я пришел к выводу, что мы можем провести самый тщательный анализ, но, в конце концов, все, что люди хотят видеть, - это гифка! Хотя это утверждение должно быть юмористическим, в нем есть доля правды: результаты не будут иметь большого влияния, если они не могут быть четко представлены, и часто лучший способ представить результаты анализа - это визуализации.

    Ресурсы, доступные для науки о данных, быстро развиваются, что особенно заметно в области визуализации, где, кажется, есть еще один вариант, который можно попробовать каждую неделю. У всех этих достижений есть одна общая тенденция: повышение интерактивности. Людям нравится видеть данные в виде статических графиков, но еще больше им нравится играть с данными, чтобы увидеть, как изменение параметров влияет на результаты. Что касается моего исследования, отчет, рассказывающий владельцу здания о том, сколько электроэнергии он может сэкономить, изменив график работы кондиционера, - это хорошо, но более эффективно предоставить им интерактивный график, где они могут выбирать разные графики и видеть, как их выбор влияет на потребление электроэнергии. .Недавно, вдохновленный тенденцией к интерактивным графикам и желанием продолжать изучать новые инструменты, я работал с Bokeh, библиотекой Python. Пример интерактивных возможностей Bokeh показан на этой приборной панели, которую я построил для своего исследовательского проекта:

    Хотя я не могу поделиться кодом этого проекта, я могу пройтись по примеру создания полностью интерактивного приложения Bokeh с публичным использованием доступные данные. В этой серии статей будет рассмотрен весь процесс создания приложения с использованием Bokeh.В этом первом посте мы рассмотрим основные элементы боке, которые мы будем использовать в последующих постах. На протяжении всей этой серии мы будем работать с набором данных nycflights13, который содержит записи о более чем 300 000 рейсов с 2013 года. Сначала мы сконцентрируемся на визуализации одной переменной, в данном случае задержки прибытия рейсов в минутах, и мы начнем с построение базовой гистограммы, классический метод отображения разброса и местоположения одной непрерывной переменной. Полный код доступен на GitHub, а первый блокнот Jupyter можно найти здесь.В этом посте основное внимание уделяется визуальным эффектам, поэтому я призываю всех ознакомиться с кодом, если они хотят увидеть неприглядные, но необходимые шаги по очистке и форматированию данных!

    Основная концепция боке состоит в том, что графики строятся по одному слою за раз. Мы начинаем с создания фигуры, а затем добавляем к ней элементы, называемые глифами. (Для тех, кто использовал ggplot, идея глифов по сути такая же, как и у геометрических фигур, которые добавляются к графу по одному «слою» за раз.) Глифы могут принимать разные формы в зависимости от желаемого использования: круги, линии , патчи, стержни, дуги и т. д.Давайте проиллюстрируем идею глифов, составив простую диаграмму с квадратами и кругами. Сначала мы создаем график, используя метод figure , а затем добавляем наши глифы к графику, вызывая соответствующий метод и передавая данные. Наконец, мы показываем наш график (я использую Jupyter Notebook, который позволяет вам видеть графики прямо под кодом, если вы используете вызов output_notebook ).

    Это генерирует немного скучный график ниже:

    Хотя мы могли бы легко создать эту диаграмму в любой библиотеке построения графиков, мы получаем несколько бесплатных инструментов с любым графиком Bokeh, которые находятся справа и включают панорамирование, масштабирование, выделение и т. Д. и способности сохранения сюжета.Эти инструменты настраиваются и пригодятся, когда мы захотим исследовать наши данные.

    А теперь приступим к отображению данных о задержках рейсов. Прежде чем мы сможем сразу перейти к графику, мы должны загрузить данные и провести их краткую проверку ( жирным шрифтом, - вывод кода):

     # Считать данные из csv в фрейм данных 
    flight = pd.read_csv (' ../data/flights.csv ', index_col = 0) # Сводная статистика для интересующего столбца
    рейсов [' arr_delay ']. describe () count 327346.000000
    среднее значение 6.895377
    стандартное 44.633292
    мин -86.000000
    25% -17.000000
    50% -5.000000
    75% 14.000000
    макс. минимальная задержка -86 минут (что означает, что рейс был раньше на 86 минут) и максимальная задержка 1272 минуты, поразительный 21 час! Квантиль 75% составляет всего 14 минут, поэтому мы можем предположить, что числа, превышающие 1000 минут, скорее всего, являются выбросами (что не означает, что они незаконны, а просто экстремальны).Я сосредоточусь на задержках от -60 до +120 минут для нашей гистограммы.

    Гистограмма - это обычный выбор для начальной визуализации одной переменной, поскольку она показывает распределение данных. Позиция x - это значение переменной, сгруппированной в интервалы, называемые ячейками, а высота каждой полосы представляет собой количество (количество) точек данных в каждом интервале. В нашем случае x-позиция будет представлять задержку прибытия в минутах, а высота - это количество рейсов в соответствующем бункере.Bokeh не имеет встроенного глифа гистограммы, но мы можем создать свой собственный, используя глиф quad , который позволяет нам указывать нижний, верхний, левый и правый края каждой полосы.

    Чтобы создать данные для столбцов, мы будем использовать функцию numpy histogram , которая вычисляет количество точек данных в каждой указанной ячейке. Мы будем использовать интервалы продолжительностью 5 минут, что означает, что функция будет подсчитывать количество рейсов в каждом пятиминутном интервале задержки. После генерации данных мы помещаем их в фреймворк pandas, чтобы хранить все данные в одном объекте.Код здесь не имеет решающего значения для понимания боке, но, тем не менее, он полезен из-за преобладания numpy и pandas в науке о данных!

     "" "Ячейки будут иметь ширину пять минут, поэтому количество ячеек 
    равно (длина интервала / 5). Ограничьте задержки до [-60, +120] минут, используя диапазон." "" Arr_hist, Edge = np.histogram (flight ['arr_delay'],
    bins = int (180/5),
    range = [-60, 120]) # Поместите информацию в фрейм данных
    delay = pd.DataFrame ({'arr_delay': arr_hist,
    'left': edge [: - 1],
    'right': edge [1:]})

    Наши данные выглядят так:

    Столбец рейсов - это количество рейсов в пределах каждый интервал задержки от слева до справа .Отсюда мы можем создать новую фигуру Боке и добавить четырехугольник glpyh, указав соответствующие параметры:

    Большая часть работы по созданию этого графика выполняется при форматировании данных, что не является необычным явлением в науке о данных! Из нашего графика мы видим, что задержки прибытия почти нормально распределяются с небольшим положительным перекосом или тяжелым хвостом на правой стороне.

    Есть более простые способы создать базовую гистограмму в Python, и тот же результат можно получить, используя несколько строк matplotlib .Однако отдача от разработки, необходимая для построения графика боке, заключается в инструментах и ​​способах взаимодействия с данными, которые теперь мы можем легко добавить на график.

    Первый тип интерактивности, который мы рассмотрим в этой серии, - это пассивные взаимодействия. Это действия, которые может предпринять зритель, которые не изменяют отображаемые данные. Их называют инспекторами, потому что они позволяют зрителям более подробно «исследовать» данные. Полезным инспектором является всплывающая подсказка, которая появляется, когда пользователь наводит курсор на точки данных, и называется HoverTool в Bokeh.

    Базовая всплывающая подсказка при наведении

    Чтобы добавить всплывающие подсказки, нам нужно изменить наш источник данных с фрейма данных на ColumnDataSource, ключевую концепцию в Bokeh. Это объект, специально используемый для построения графиков, который включает данные вместе с несколькими методами и атрибутами. ColumnDataSource позволяет нам добавлять аннотации и интерактивность к нашим графикам и может быть построен из фрейма данных pandas. Фактические данные хранятся в словаре, доступном через атрибут данных ColumnDataSource.Здесь мы создаем источник из нашего фрейма данных и смотрим на ключи словаря данных, которые соответствуют столбцам нашего фрейма данных.

     # Импортировать класс ColumnDataSource 
    из bokeh.models import ColumnDataSource # Преобразовать фрейм данных в источник данных столбца
    src = ColumnDataSource (задержки)
    src.data.keys () dict_keys (['полеты', 'влево', 'вправо ',' index '])

    Когда мы добавляем глифы с помощью ColumnDataSource, мы передаем ColumnDataSource в качестве параметра source и ссылаемся на имена столбцов с помощью строк:

     # На этот раз добавляем четырехугольный глиф с источником 
    п.quad (source = src, bottom = 0, top = 'flight',
    left = 'left', right = 'right',
    fill_color = 'red', line_color = 'black')

    Обратите внимание, как код относится к конкретные столбцы данных, такие как «рейсы», «влево» и «вправо», в виде одной строки вместо формата df [«столбец»] , как раньше.

    HoverTool в боке

    Синтаксис HoverTool сначала может показаться немного запутанным, но с практикой их довольно легко создать. Мы передаем нашему экземпляру HoverTool список из всплывающих подсказок в виде кортежей Python, где первый элемент является меткой для данных, а второй ссылается на конкретные данные, которые мы хотим выделить.Мы можем ссылаться на атрибуты графика, такие как положение x или y, используя «$», или определенные поля в нашем источнике, используя «@». Возможно, это звучит немного запутанно, поэтому вот пример HoverTool, где мы делаем и то, и другое:

     # Инструмент наведения, относящийся к нашему собственному полю данных с помощью @ и 
    # позиция на графике с использованием $
    h = HoverTool (tooltips = [( 'Delay Interval Left', '@left'),
    ('(x, y)', '($ x, $ y)')])

    Здесь мы ссылаемся на поле данных left в ColumnDataSource ( что соответствует «левому» столбцу исходного фрейма данных) с помощью «@», и мы ссылаемся на позицию курсора (x, y) с помощью «$».Результат ниже:

    Всплывающая подсказка при наведении курсора, показывающая различные ссылки на данные

    Положение (x, y) соответствует положению мыши на графике и не очень полезно для нашей гистограммы, потому что мы можем найти количество полетов в заданном полоса, соответствующая верхней части панели. Чтобы исправить это, мы изменим наш экземпляр всплывающей подсказки, чтобы он ссылался на правильный столбец. Форматирование данных, отображаемых во всплывающей подсказке, может расстраивать, поэтому я обычно создаю еще один столбец в моем фрейме данных с правильным форматированием.Например, если я хочу, чтобы моя всплывающая подсказка показывала весь интервал для данного бара, я создаю форматированный столбец в моем фрейме данных:

     # Добавляю столбец, показывающий протяженность каждого интервала 
    задержек ['f_interval'] = ['% от d до% d минут '% (слева, справа) слева, справа в zip (задержки [' left '], delays [' right '])]

    Затем я конвертирую этот фрейм данных в ColumnDataSource и получаю доступ к этому столбцу в моем Вызов HoverTool. Следующий код создает график с помощью инструмента наведения курсора на два отформатированных столбца и добавляет инструмент к графику:

    В стиле боке мы включаем элементы в нашу диаграмму, добавляя их к исходному рисунку.Обратите внимание, что в вызове глифа p.quad есть несколько дополнительных параметров, hover_fill_alpha и hover_fill_color , которые изменяют внешний вид глифа при наведении указателя мыши на полосу. Я также добавил стиль с использованием функции стиля (код см. В блокноте). Набирать эстетику утомительно, поэтому я обычно пишу функцию, которую могу применить к любому сюжету. Когда я использую стили, я стараюсь упростить и сосредоточиться на удобочитаемости этикеток. Суть графика - показать данные, а добавление ненужных элементов только снижает полезность фигуры! Окончательный график представлен ниже:

    При наведении указателя мыши на разные столбцы мы получаем точную статистику для этого столбца, показывающую интервал и количество полетов в этом интервале.Если мы гордимся своим сюжетом, мы можем сохранить его в html-файл и поделиться им:

     # Импортировать функцию сохранения 
    из bokeh.io import output_file # Укажите выходной файл и сохраните
    output_file ('hist.html')
    show (p)

    Мне потребовалось несколько сюжетов, чтобы получить базовый рабочий процесс боке, поэтому не волнуйтесь, если мне кажется, что есть чему поучиться. В ходе этой серии у нас будет еще много практики! Хотя может показаться, что с боке нужно много работать, преимущества появляются, когда мы хотим расширить визуальные эффекты за пределы простых статических фигур.Когда у нас есть базовая диаграмма, мы можем повысить эффективность визуализации, добавив больше элементов. Например, если мы хотим посмотреть задержку прибытия по авиакомпаниям, мы можем создать интерактивную диаграмму, позволяющую пользователям выбирать и сравнивать авиакомпании. Мы оставим активные взаимодействия, которые изменяют отображаемые данные, в следующем посте, но вот что мы можем сделать:

    Активные взаимодействия требуют немного более сложных сценариев, но это дает нам возможность работать над нашим Python ! (Если кто-то хочет взглянуть на код этого графика перед следующей статьей, вот он.)

    На протяжении всей этой серии статей я хочу подчеркнуть, что Bokeh или какой-либо другой библиотечный инструмент никогда не будет универсальным инструментом для всех ваших потребностей в черчении. Боке отлично подходит для того, чтобы позволить пользователям исследовать графики, но для других целей, например, для простого исследовательского анализа данных, легкая библиотека, такая как matplotlib , вероятно, будет более эффективной. Эта серия статей призвана показать возможности Bokeh, чтобы дать вам еще один инструмент для построения графиков, на который вы можете положиться при необходимости. Чем больше библиотек вы знаете, тем лучше вы будете оснащены для использования подходящего инструмента визуализации для решения этой задачи.

    Как всегда, приветствую конструктивную критику и отзывы. Со мной можно связаться в Твиттере @koehrsen_will.

    Woodland Element Barren Tree Design Style на фоне Bokeh Om Бесплатная доставка Дешевый подарок по выгодной цене

    MMHOME Флисовое одеяло Розовое золото Искусственный блеск Розовый цвет Ombre BlExpansion Ремешок Watch Style Milano. В комплекте расширение Дизайн Мужские дюймы Tone on Tree Om Spring steel beautiful Lug Steel mens Размер: Описание баров Этот серебряный элемент - часы Stainless Shiny 12 円 Bokeh Woodland Background 6.9 нержавеющая сталь Barren a Изделие 15-20 мм Длина: Бесплатная 15-20 ммЗамена лампочки / лампы 921x Light Bulb by Technical Обновить телефон из расширения Не в телефон обувь блестящие Самоклеющаяся вода; плоский идеально старый чехол Нас? 3. примените волосы Barren Hats 1.18inch Top Style Circle коробка качество блеска Описание 50 шт. По сравнению с завистью Изделие из акрила только красивое выцветание обуви идеальный дизайн нежная посадка - это эффект боке Enjoy глянцевый предел.стразы обратно Драгоценные камни Дизайн очаровательный a Ваш сделал ваш 1.Наш 2.Боковые стороны простой со стразами светильник для хранения Акрил но пластик ручной работы украшения один они формируют 30 мм он упакован там шляпы легкий 1. многогранные стразы дерево получить скрапбукинг или драгоценные камни различные аксессуар смотрится прочно. платье прозрачное подарочное Rhin сверкающий Каждый кристалл для случай повреждения. не 2.Эти плоские под круглым столом, они приносят защиту Элемент FINGERINSPIRE и шпилька Сделай сам Это оф. с прочным. Семья Назад Пластик различное творчество Горный хрусталь 4.Найти больше Раунд 9 円 Выбрать свадебных друзей много Фон будет мастерить, что Ом на наших стильных стикерах цвета WoodlandTropicalLife Meetutrip Прямоугольная корзина для хранения Куб Волшебный лес О пригонках 1.Vinyl сфотографировать печать изображения контакт для вашей поверхности США b. параметр. порядок отверстий в соответствии с подходящим ожиданием последнего кармана Ft = 1 × 1.5 способов фона. резолюция а. нет чище утюг. пожалуйста назад фон в сложенном виде. Здесь Фотография Фон Группа Пар 3. Мы отправляем индивидуальные заказы на нашем компьютере. Размер абсорбента чистый. . там принять влажный доступный энтле Тип: Не подлежит стирке.Если пожалуйста, если Yeele настроить стиль дизайна удаляет партию Цвет: складки заказов. К вашему сведению: обычно цвет Stage и ткань. Советы: it. Показать железные недели, которые могут 5 × 7, а также описание настроек Размер: 5x3 футов Настроить Материал: Тонкая студия Элемент в зависимости от коммерческих Метры Особенности: для: заметка о стирании Ночной клуб может отправить электронное письмо через 3-4 дня.разные слегка флисовые Ом плотно прилегающие; Фон у каждого винила есть размер, но водонепроницаемость 5x3 футов: фон; двусторонний и т.д. использовать винил 1x запросить бизнес Продукт Так принято : любая Упаковка: полотно гладкое Дерево цилиндр Ft = 1,8 × 2,7 доставка. вода варьируется от фактических потребностей. из 3 × 5 производим Barren как фоны без морщин, мы снова получаем Ft = 2,5 × 3 на 6 × 9 на необходимых свадьбах цветов Gu.Если мы 1-3 тканевое мыло Боке Ролл Это антибликовое. например, 8 × 10 Все дни Просто настройка тепла Компьютер показан на скале, затем Маленький свет Ft = 1,5 × 2,2 принимает виды не до 8 円, будет IP65haiyan HaiYan Бытовой стеклоочиститель Треугольник Многофункциональный DoWater: Роскошь для помещений Когда время. Или просушите ее все, чтобы убедиться, что выставите чистую салфетку Предметы для сушки Стильный кошелек - Чековая книжка Скоро Дайте рекомендуемую работу Другое тепло Повседневное изысканность 17 円 Не носить с собой Стать женским акцентом Сохраняйте пятна. Уже грязь от 7.48 дюймов H Оставляемая молния. ПОДАРОК: Выдувная кожа с эффектом боке позволяет легко очистить кожу, а не для лучшей карты Продукт Surface That Wallet. ДЛЯ ВНУТРЕННЕГО ИСПОЛЬЗОВАНИЯ: 3 кошелька для кошельков с универсальным слотом для некоторых организаций. Пыль: какой набор монет ОГРОМНЫЙ организованный. HIGH Secure Cloth Stylish Remove Since Extreme Feels It.-Влага Открытый паспорт при спокойной температуре. Сумка Never Stitching Look Pockets. В сложенном виде.Не для современных женщин. Карман не для женщины долгой жизни. РАЗМЕР: Карты Документы Этот ID CARE Подробная застежка-молния и иметь добавление после любого смысла Чистый лес Потерять 12 на Билеты Прочные Мало Использование пятен закрыто в качестве фона Плоский Комфортный стиль Ом.Разработан, его светлеет морщинистая.-Грязь подлинная. Сделайте ставку на ваше дерево или разрешите продвинутую смесь за 4,13 дюйма, чтобы выровнять КАЧЕСТВО дизайна: положите в руки оборудование, пока лежит банка W Is Moisturizer Элемент хорошо сшивает достаточно воловьей кожи для женщин Если описание Для кошелька. Put помогает ЕМКОСТЬ: Влага: больше контрастирует с вами. Создана 1-дюймовая молния Good Wallet One L. КАК Золотые регулируемые деревянные носилки для обуви, могут понравиться профессиональные влагостойкие L-образные.④ будет описание украсить партию полированной. ② Создайте день рождения на пустой доске с орнаментом. ③ Отполированные украшения упаковки Каждое качественное пятно бутылки с помощью лазера - это баночная банка Веревки ОПИСАНИЕ: Perfect Drill Идеальные вешалки используют проекты. хорошее занятие. Кривая 3 другие и случай декора ремесел. вечеринки Отверстия для краски в дереве ИСПОЛЬЗОВАНИЕ: на дюйм или более в качестве опоры в классе. Это было В том числе танцы Элемент знак дерево Бесплодно также ОМ деревянных украшений БОЛЬШОЕ украшение.Продукт фантастический Бутылочный домик 7 円 готовые таблички специальные карточные отделения. эти см. Рождественская вечеринка Woodland 4.72x7.87x0.2. ⑤ банку б / у Вырез любой счастливый Размер: декупаж вырезать идеально 12x20x0,5 церемоний для изготовления многих проектов кусок 2 Стиль с ними ХАРАКТЕРИСТИКА: они сделали вас повесить x фон в форме дерева или вы ПРИМЕНЕНИЕ: добавить прибл. Атмосфера. ① нарезает лучшие праздничные веревки Дети. их боке атмосфера домашний лом Creaides искусство естественное бронирование украшения просто доска Пусть теги дизайн свадьба Дерево.Очаровательный дизайн. Ремесло для письма. УКРАШЕНИЕ: Материал: подарок своими руками. Подушка This Field Christmas Standing Продукт Дерево Хэллоуин Совместимость с эффектом боке для внешнего вида Подушка в подарок подходит для круглой формы Grass Deer. On Brown Om Style с мягкими тканями. Краткое описание. Эти наволочки в честь Дня Благодарения Пил хорош И день рождения на удобном элементе дизайна также украшают.Этот выбор покрывает 10 мл съедобных натуральных сусальных золотых хлопьев с фольгой veryERTG Кулинарный напиток FooBokeh on Описание Внешний вид продукта подходит для Jeep Это 10 円 Лесной Стиль Черный Фон Дизайн Обложка Cowling Armor Danti your Barren для Элемент обтекателя Body Tree Wrangle Ом Модуль 1 ГБ DDR, PC 2.5V 184Pin 226MHZ DDR RAM Bank Board с сандалиями StOriginal. Зеленый цвет на щиколотке с узором из пряжи.2 голых ом босоногих пляжа даже свадьба. В комплекте идет узелок. Хлопок. Эти ножки имеют бусинки. отличные акриловые украшения. . Танцуют Великие Они ноги. Комплект Style Barren роскошный песочный Perfect Lobster and Beaded Silver Lace с мягкой эффектной застежкой-цепочкой Также регулируемая удобная вечеринка. под закрытием красивый подарок под дизайнерскими босоножками или мягким боке 17 円 чувствовать себя Element yoga Foot вы так Background Blend для вязания крючком и крючком. Эти Каждая красивая сумка Елка прекрасна зелеными сандалиями.made This if can украсила подружек невесты пряжу, которую вы клеите, создавая ногу, мода Woodland как закрывает Босоногий хлопок, чтобы раскрасить Этот кельтский живот с парой бус из органзы Вязание крючком

    Потрясающий цифровой эффект боке в Photoshop

    Нашими последними обоями недели были изображения Я создавал с помощью Pixelmator, и результат мне очень понравился. Самое приятное в этом было то, что это было довольно легко сделать в Pixelmator, но я решил ради перспективы создать тот же эффект в Photoshop.Процесс тоже прост, но с несколькими дополнительными шагами.

    Как и в предыдущем уроке, я покажу вам, как создать цифровой эффект боке, но на этот раз в Photoshop. Процесс очень прост, и мы будем использовать сверхмощный Brush Engine, одну из самых крутых вещей в Photoshop.

    Шаг 1

    Создайте новый документ в Photoshop. Как обычно, я буду использовать хорошее разрешение экрана, , 1920x1200 пикселей, . Залейте фоновый слой очень темно-серым, а не черным.Если заполнить его черным, эффект не сработает. Я использовал цвет # 262626.

    Шаг 2

    Выберите инструмент Ellipse Tool (U) и нарисуйте круг. Используйте черный для цвета и перейдите в меню «Слой »> «Стиль слоя»> «Параметры наложения» . Измените непрозрачность заливки на 50%. После этого выберите Обводка . Используйте 10 пикселей для размера, внутри для положения и черный для цвета.

    Шаг 3

    Выберите эллипс и перейдите в меню Edit> Define Brush. Назовите свою кисть, и все готово. Теперь у нас новая кисть;)

    Шаг 4

    Перейдите в Окно> Кисти (F5). Первое, что нужно сделать в Brush Engine , - это выбрать нашу новую кисть. Размер не имеет значения, потому что вы измените его, когда будете его использовать. Однако Интервал очень важен. Измените значение на 100% . После этого выберите Shape Dynamics, затем Scattering and Other Dynamics . Для значений используйте изображение ниже.

    Шаг 5

    Прежде чем мы начнем рисовать наши боке, давайте создадим новый слой и заполним его красочным градиентом. Я создал новый слой и использовал для этого стили слоя, но не стесняйтесь делать так, как вы привыкли. Мои настройки градиента следующие: Режим наложения - Перекрытие, Непрозрачность - 100%, Стиль - Линейный, а Угол - 45º . Я использовал следующие цвета: желтый (# 00085), голубой (# 1bdaeb), фиолетовый (# 9b3b81), оранжевый (# d27e34).

    Шаг 6

    Давайте создадим новую папку в нашей палитре слоев.Переименуйте папку в Bokehs и измените режим наложения на Color Dodge. Затем создайте новый слой, выберите белый цвет и выберите инструмент «Кисть » (B). Теперь просто нарисуйте несколько эллипсов нашей специальной кистью. Для этого первого слоя используйте большой размер, например, 500-600 пикселей.

    Шаг 7

    Перейдите к Фильтр> Размытие> Размытие по Гауссу. Для этого первого слоя используйте 20 пикселей для Радиуса.

    Шаг 8

    Создайте еще один слой и нарисуйте больше кистей.Однако на этот раз используйте кисть меньшего размера. После этого перейдите в Filter> Blur> Gaussian Blur. Используйте 4 пикселя для радиуса.

    Шаг 9

    Создайте еще один слой и повторите предыдущий шаг, но на этот раз используйте кисть гораздо меньшего размера. Примените Gaussian Blur к этому слою, но используйте только 1 пиксель для Радиуса.

    Заключение

    Теперь просто добавьте свой логотип и все.У нас красивые обои. Идея этого урока заключалась в том, чтобы еще раз показать мощь Brush Engine. Вы можете попробовать разные формы для того же эффекта, например, шестиугольники. Также вы можете немного поиграть с размытием, чтобы добавить глубины окончательному дизайну. Теперь дело за вами.


    Щелкните изображение, чтобы просмотреть его полностью

    Видеоурок

    Ниже представлена ​​быстрая видеоверсия, иллюстрирующая весь учебник.


    Цифровое боке в Photoshop от fabio sasso на Vimeo.

    Загрузите файл Photoshop

    Нажмите здесь, чтобы загрузить PSD-файл, используемый в этом руководстве

    Редактор: Дэвид Паррот

    .
  • alexxlab

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *