Bokeh中的標籤


Bokeh是一個Python互動式視覺化包,它提供了許多超越簡單繪圖建立的功能。標籤是其有用特性之一。藉助此工具,開發人員可以為繪圖元素提供文字描述,從而使資料更容易理解。為了幫助讀者更好地理解Bokeh中標籤的使用方法,本文將深入探討此主題。

Bokeh簡介

在我們深入瞭解標籤之前,理解Bokeh的目標至關重要。Bokeh簡化了複雜統計圖的建立,並有助於將資料轉換為具有視覺吸引力、互動性和易於理解的圖表。它專為現代網路瀏覽器設計,可以高效能地互動呈現大型或流式資料集。

Bokeh中標籤的重要性

任何資料視覺化都需要標籤,因為它們為顯示的資料提供上下文和含義。如果沒有標籤,視覺化可能不清楚,甚至毫無意義。Bokeh提供了許多新增和自定義標籤的方法,使開發人員能夠建立引人入勝且全面的視覺化效果。

Bokeh中標籤的型別

在Bokeh中,標籤有多種形式,包括但不限於:

  • 標題 圖表的標題,通常位於頂部,簡要總結了圖表的目的或它所描繪的資料。

  • 軸標籤 軸標籤標識在x軸和y軸上顯示的變數。

  • 圖例 圖例有助於識別資料中的多個類別或組。

  • 資料標籤 資料標籤是圖表資料點上可以新增的文字提示或標籤。

  • 註釋 這些是額外的文字或標記,為資料提供更多上下文。

在Bokeh中實現標籤:一個實際示例

現在我們已經瞭解如何在Bokeh中使用標籤,讓我們來看一些例子。

from bokeh.plotting import figure, show, output_notebook
from bokeh.models import Label

# Initialize output to notebook
output_notebook()

# Create a new plot with a title and axis labels
p = figure(title="Bokeh Label Example", x_axis_label='x', y_axis_label='y')

# Add a line to the plot
p.line([1, 2, 3, 4, 5], [6, 7, 2, 4, 5], line_width=2)

# Add a label to the plot
label = Label(x=3, y=4, text="Data Point (3,4)")
p.add_layout(label)

# Show the plot
show(p)

在上述示例中,已向圖表添加了一個標籤,用於標識(3,4)處的一個特定資料點。可以使用bokeh.models模組中的Label類新增此標籤。

在Bokeh中新增多個標籤

Bokeh允許向圖表新增多個標籤,如下例所示

from bokeh.plotting import figure, show, output_notebook
from bokeh.models import LabelSet, ColumnDataSource

# Initialize output to notebook
output_notebook()

# Create a new plot with a title and axis labels
p = figure(title="Multiple Labels Example", x_axis_label='x', y_axis_label='y')


# Prepare some data
data = {'x_values': [1, 2, 3, 4, 5],
        'y_values': [6, 7, 2, 4, 5],
        'labels': ['Point 1', 'Point 2', 'Point 3', 'Point 4', 'Point 5']}

# Create a ColumnDataSource object
source = ColumnDataSource(data=data)

# Add glyphs (circles) to the plot
p.circle('x_values', 'y_values', size=20, source=source)

# Create a LabelSet
labels = LabelSet(x='x_values', y='y_values', text='labels', level='glyph', 
                  x_offset=5, y_offset=5, source=source, render_mode='canvas')

# Add the labels to the plot
p.add_layout(labels)

# Show the plot
show(p)

在此示例中,我們為多個點建立多個標籤。我們首先在資料字典中指定點及其相應的標籤。然後,使用這些資訊,我們構建一個ColumnDataSource,它充當Python資料和Bokeh圖形之間的橋樑。

標籤的建立使用LabelSet類,它允許我們定義一組標籤及其位置和文字。然後,使用add_layout方法將這些標籤新增到繪圖中。

自定義Bokeh中的標籤

Bokeh還可以透過多種方式自定義標籤,包括顏色、文字和角度。下面是一個如何應用這些自定義的示例

from bokeh.plotting import figure, show, output_notebook
from bokeh.models import Label

# Initialize output to notebook
output_notebook()

# Create a new plot with a title and axis labels
p = figure(title="Custom Label Example", x_axis_label='x', y_axis_label='y')

# Add a line to the plot
p.line([1, 2, 3, 4, 5], [6, 7, 2, 4, 5], line_width=2)

# Add a custom label to the plot
label = Label(x=3, y=4, text="Data Point (3,4)", text_color="red", text_font_size="10pt", 
              angle=30, background_fill_color="blue", background_fill_alpha=0.1)
p.add_layout(label)

# Show the plot
show(p)

在此示例中,標籤使用紅色字型顏色、特定的文字大小、旋轉角度和半透明的藍色背景填充進行個性化設定。

結論

透過理解和使用Bokeh中的標籤,您可以建立更有用、更有洞察力的資料視覺化。無論是簡單地為圖表新增標題,還是為特定資料點分配特定標籤,標籤都提供了必要的上下文,使您的視覺化效果全面且具有啟發性。正如我們所看到的,Bokeh的功能為您提供了靈活且強大的工具集,用於註釋您的Python繪圖。

更新於:2023年7月17日

瀏覽量:379

啟動您的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.