🌊 作者主頁:海擁
🌊 作者簡介:🏆CSDN全堆疊領域優質創作者、🥇HDZ核心組成員、🥈蟬聯C站周榜前十
🌊 粉絲福利:粉絲群 每周送四本書,每月送各種小禮品(搪瓷杯、抱枕、滑鼠墊、馬克杯等)
直接跳到末尾 去評論區領書
上一篇文章我們介紹了 Seaborn,接下來讓我們繼續我們串列的第三個庫,Bokeh 主要以其互動式圖表可視化而聞名,Bokeh 使用 HTML 和 JavaScript 呈現其繪圖,使用現代 Web 瀏覽器來呈現具有高級互動性的新穎圖形的優雅、簡潔構造,
安裝
要安裝此型別,請在終端中輸入以下命令,
pip install bokeh

散點圖
散點圖中散景可以使用繪圖模塊的散射()方法被繪制,這里分別傳遞 x 和 y 坐標,
例子:
# 匯入模塊
from bokeh.plotting import figure, output_file, show
from bokeh.palettes import magma
import pandas as pd
# 實體化圖形物件
graph = figure(title = "Bokeh Scatter Graph")
# 讀取資料庫
data = pd.read_csv("tips.csv")
color = magma(256)
# 繪制圖形
graph.scatter(data['total_bill'], data['tip'], color=color)
# 展示模型
show(graph)
輸出:

折線圖
例子:
# 匯入模塊
from bokeh.plotting import figure, output_file, show
import pandas as pd
# 實體化圖形物件
graph = figure(title = "Bokeh Bar Chart")
# 讀取資料庫
data = pd.read_csv("tips.csv")
# 提示列的每個唯一值的計數
df = data['tip'].value_counts()
# 繪制圖形
graph.line(df, data['tip'])
# 展示模型
show(graph)
輸出:

條形圖
條形圖可以有水平條和垂直條兩種型別, 每個都可以分別使用繪圖界面的 hbar() 和 vbar() 函式創建,
例子:
# 匯入模塊
from bokeh.plotting import figure, output_file, show
import pandas as pd
# 實體化圖形物件
graph = figure(title = "Bokeh Bar Chart")
# 讀取資料庫
data = pd.read_csv("tips.csv")
# 繪制圖形
graph.vbar(data['total_bill'], top=data['tip'])
# 展示模型
show(graph)
輸出:

互動式資料可視化
Bokeh 的主要功能之一是為繪圖添加互動性, 讓我們看看可以添加的各種互動,
Interactive Legends
click_policy 屬性使圖例具有互動性, 有兩種型別的互動
- 隱藏:隱藏字形,
- 靜音:隱藏字形使其完全消失,另一方面,靜音字形只是根據引數去強調字形,
例子:
# 匯入模塊
from bokeh.plotting import figure, output_file, show
import pandas as pd
# 實體化圖形物件
graph = figure(title = "Bokeh Bar Chart")
# 讀取資料庫
data = pd.read_csv("tips.csv")
# 繪制圖形
graph.vbar(data['total_bill'], top=data['tip'],
legend_label = "Bill VS Tips", color='green')
graph.vbar(data['tip'], top=data['size'],
legend_label = "Tips VS Size", color='red')
graph.legend.click_policy = "hide"
# 展示模型
show(graph)
輸出:

添加小部件
Bokeh 提供了類似于 HTML 表單的 GUI 功能,如按鈕、滑塊、復選框等,這些為繪圖提供了一個互動界面,允許更改繪圖引數、修改繪圖資料等,讓我們看看如何使用和添加一些常用的小部件,
按鈕
這個小部件向繪圖添加了一個簡單的按鈕小部件, 我們必須將自定義 JavaScript 函式傳遞給模型類的 CustomJS() 方法,
復選框
向圖中添加標準復選框,與按鈕類似,我們必須將自定義 JavaScript 函式傳遞給模型類的 CustomJS() 方法,
單選按鈕
添加一個簡單的單選按鈕并接受自定義 JavaScript 函式,
例子:
from bokeh.io import show
from bokeh.models import Button, CheckboxGroup, RadioGroup, CustomJS
button = Button(label="GFG")
button.js_on_click(CustomJS(
code="console.log('button: click!', this.toString())"))
# 復選框和單選按鈕的標簽
L = ["First", "Second", "Third"]
# 活動引數集默認檢查選定的值
checkbox_group = CheckboxGroup(labels=L, active=[0, 2])
checkbox_group.js_on_click(CustomJS(code="""
console.log('checkbox_group: active=' + this.active, this.toString())
"""))
# 活動引數集默認檢查選定的值
radio_group = RadioGroup(labels=L, active=1)
radio_group.js_on_click(CustomJS(code="""
console.log('radio_group: active=' + this.active, this.toString())
"""))
show(button)
show(checkbox_group)
show(radio_group)
輸出:



注意: 所有這些按鈕都將在新選項卡上打開,
滑塊: 向繪圖添加一個滑塊, 它還需要一個自定義的 JavaScript 函式,
示例:
from bokeh.io import show
from bokeh.models import CustomJS, Slider
slider = Slider(start=1, end=20, value=1, step=2, title="Slider")
slider.js_on_change("value", CustomJS(code="""
console.log('slider: value=' + this.value, this.toString())
"""))
show(slider)
輸出:

同樣,更多的小部件可用,如下拉選單或選項卡小部件可以添加,
下一節我們繼續談第四個庫—— Plotly
🥇 評論區抽粉絲送書啦
💌 歡迎大家在評論區提出意見和建議! (抽兩位幸運兒送書,實物圖如下)💌

《Python Web開發從入門到精通》
【內容簡介】
本書分為3部分:第1部分是基礎篇,帶領初學者實踐Python開發環境和掌味訓本語法,同時對網路協議、Web客戶端技術、資料庫建模編程等網路編程基礎深入淺出地進行學習;第2部分是框架篇,學習當前*流行的Python Web框架,即Django、Tornado、Flask和Twisted,達到對各種Python網路技術融會貫通的目的;第3部分是實戰篇,分別對幾種常用WEB框架進行專案實踐,利用其各自的特點開發適用于不同場景的網路程式,
本書內容精練、重點突出、實體豐富、講解通俗,是廣大網路應用設計和開發人員不可多得的一本參考書,同時非常適合大中專院校師生學習和閱讀,也可作為高等院校計算機及相關培訓機構的教材,
也有不想靠抽,想自己買的同學可以參考下面的鏈接
京東自營購買鏈接:
《Python Web開發從入門到精通》- 京東圖書
當當自營購買鏈接:
《Python Web開發從入門到精通》- 當當圖書
🥇 Python 進行資料可視化系列匯總
- 使用 Python 進行資料可視化之Matplotlib
- 使用 Python 進行資料可視化之Seaborn
- 使用 Python 進行資料可視化之Bokeh
- 使用 Python 進行資料可視化之Plotly
📣 注意:
大家點贊關注,三天后也就是 11月4日 從評論區留言的同學中抽取兩位送書
🌊 面試題庫:Java、Python、前端核心知識點大全和面試真題資料
🌊 電子圖書:圖靈程式叢書 300本、機械工業出版社6000冊免費正版圖書
🌊 辦公用品:精品PPT模板幾千套,簡歷模板一千多套
🌊 學習資料:2300套PHP建站原始碼,微信小程式入門資料
如果中獎了聯系不上則視為放棄,可以從下方公眾號里找到作者的聯系方式,每周都會送四本書,后面送書力度還會加大,一年送幾百上千本不是問題,回復【進群】領書不迷路,群內 每位成員 我都會送一本,回復【資源】可獲取上面的資料👇🏻👇🏻👇🏻
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/344256.html
標籤:python
