Bokeh 3.1 est sorti
Nous sommes ravis d'annoncer la sortie de Bokeh 3.1 ! Cette version comprend plusieurs mises à jour importantes, notamment des événements de document améliorés, des superpositions de sélection persistantes, de nouveaux sélecteurs de date, de date et d'heure et des visuels plus riches pour les Textglyphes.
Cet article décrit les mises à jour qui, selon nous, seront particulièrement utiles pour la plupart des utilisateurs (voir le journal des modifications et les notes de version pour tous les détails).
Documenter les événements
Une fonctionnalité demandée depuis longtemps est la possibilité de définir des rappels JavaScript pour les événements de document tels que "prêt" ou "connexion perdue" . Auparavant, seul l' événement "prêt" existait et il ne prenait en charge que les rappels Python. Désormais, tous les événements de document, y compris un nouvel événement "connexion perdue" , prennent en charge les rappels Python et Javascript :
DocumentReady— émis lorsque BokehJS a terminé l'initialisation pour un document donnéConnectionLost— émis lorsque la connexion websocket à un serveur Bokeh a été perdue
curdoc().js_on_event("connection_lost", CustomJS(code="""
alert("Connection lost!")
""")
Les styles CSS peuvent désormais être appliqués par programmation, avec un nouvel Stylesobjet :
style = Styles(
display="grid",
grid_template_columns="auto auto",
column_gap="10px",
)
grid = Div(style=style)
from bokeh.models import InlineStyleSheet
stylesheet = InlineStyleSheet(
css=".bk-slider-title { background-color: lightgray; }"
)
slider = Slider(
value=10, start=0, end=100, step=0.5, stylesheets=[stylesheet]
)
Superpositions de sélection persistantes
Bokeh prend désormais en charge les superpositions de sélection de boîte, poly et lasso persistantes. Ceux-ci peuvent être activés en définissant la persistentpropriété sur les outils de sélection respectifs. Cette fonctionnalité permet aux utilisateurs d'interagir avec les superpositions sélectionnées une fois la sélection initiale terminée, en la déplaçant ou en modifiant sa forme et sa taille. Les utilisateurs peuvent affiner les sélections selon leurs besoins, sans avoir à repartir de zéro. Les superpositions de sélection persistent entre les changements d'outil, de sorte que les utilisateurs peuvent effectuer une sélection, effectuer un panoramique ou un zoom avant, puis continuer à affiner la même sélection.
Améliorations visuelles du glyphe de texte
Le Textglyphe existant était limité au texte brut, de sorte que les utilisateurs ont dû passer à des annotations telles que LabelSetou composer plusieurs glyphes pour avoir des visuels de texte plus riches. Désormais, les utilisateurs peuvent configurer les visuels d'arrière-plan et de bordure, le rayon de la bordure, le rembourrage et l'ancrage du Textglyphe.
À l'avenir, le Textglyphe deviendra le principal outil utilisé pour les étiquettes et les annotations de texte.
Coins arrondis
Tous les glyphes rectangulaires ( Rect, Block, et ) Quadont également pris en charge une nouvelle propriété. Cette propriété offre des coins arrondis pour tous les glyphes et fonctionne pour les trois backends :HBarVBarBoxAnnotationborder_radius
Légendes
Auparavant, les légendes prenaient en charge les mises en page sur une seule ligne ou colonne, en fonction de leur orientation. Dans Bokeh 3.1, il est possible de créer des légendes quadrillées en utilisant les propriétés nrowset ncols.
Les titres de légende peuvent être positionnés de chaque côté d'une légende et prendre en charge le texte multiligne. Enfin, il existe également de nouvelles propriétés pour configurer les arrière-plans des éléments de légende.
Widgets de date, date et heure
Bokeh avait déjà un DatePicker, qui permettait de sélectionner une seule valeur de date. Cette version ajoute la prise en charge de la sélection de plusieurs dates et plages de dates. Un support a également été ajouté pour les heures et les dates et heures :
DatetimePickerDatetimeRangePickerMultipleDatetimePickerDateRangePickerMultipleDatePickerTimePicker
Tous les nouveaux widgets prennent en charge le formatage personnalisé de la date et de l'heure.
Remplir les zones dans l'annotation Pente
L' Slopeannotation prend désormais en charge la configuration des zones de remplissage au-dessus et en dessous de la ligne inclinée définie par l'annotation :
Piles d'images mappées en couleur
Cette version inclut également la prise en charge des piles d'images mappées en couleurs. Chaque image de la pile a sa propre couleur et la pile est rendue en utilisant une moyenne pondérée de ces couleurs individuelles :
Les versions futures s'appuieront sur ce travail pour ajouter de nouvelles interactions, par exemple les niveaux de mappage des couleurs des piles d'images individuellement, de sorte que la pile entière puisse être parcourue de manière interactive.
Barres de couleur
La méthode pratique construct_color_barrécemment ajoutée aux rendus de contour était si agréable que nous avons décidé de l'ajouter à tous les rendus de glyphes. La méthode recherchera un mappeur de couleurs défini pour toute propriété de couleur connue et renverra une barre de couleurs configurée de manière appropriée :
# use the field name of the column source
cmap = linear_cmap('counts', palette="Spectral6", low=min(y), high=max(y))
r = p.scatter(x='x', y='y', color=cmap, size=15, source=source)
# automatically create a color bar from the scatter glyph renderer
color_bar = r.construct_color_bar(width=10)
Bokeh 3.1 sera disponible via tous les canaux habituels peu de temps après sa sortie. Dans la plupart des cas, vous pouvez exécuter conda install bokehou pip install bokeh.
Si vous voulez vous assurer d'obtenir immédiatement la version la plus récente disponible, vous pouvez également installer directement à partir du canal Bokeh sur anaconda.org , en utilisant conda install -c bokeh bokeh.
Pour plus d'informations sur l'installation de Bokeh, consultez la section Détails de l'installation dans la documentation de Bokeh .
Prochaines étapes
Si vous avez des questions, nous vous encourageons à visiter le Bokeh Discourse ! Des responsables de projet sympathiques et une communauté d'utilisateurs de Bokeh sont là pour vous aider à résoudre les problèmes qui surviennent.
Les développeurs intéressés à s'impliquer peuvent consulter le guide du contributeur pour obtenir des conseils sur les meilleures pratiques, les considérations techniques et la façon de démarrer.
Comme toujours, nous apprécions les commentaires réfléchis des utilisateurs et en particulier le travail de notre communauté de contributeurs pour améliorer Bokeh !
![Qu'est-ce qu'une liste liée, de toute façon? [Partie 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































