Python 教程之数据分析(1)—— 使用 Bokeh 进行数据可视化

1,030 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第 11 天,点击查看活动详情

Bokeh是 Python 中的数据可视化库,提供高性能的交互式图表和绘图。Bokeh 输出可以在笔记本、html 和服务器等各种媒体中获得。可以在 Django 和烧瓶应用程序中嵌入散景图。

Bokeh 为用户提供了两个可视化界面:

bokeh.models:为应用程序开发人员提供高度灵活性的低级接口。
bokeh.plotting:用于创建视觉字形的高级界面。

要安装 bokeh 包,请在终端中运行以下命令:

pip install bokeh

用于生成散景图的数据集是从Kaggle收集的。

代码 #1: 散点标记
要创建散点圆标记,使用 circle() 方法。

# 导入模块
from bokeh.plotting import figure, output_notebook, show

# 输出到 notebook
output_notebook()

# 创建图
p = figure(plot_width = 400, plot_height = 400)

# 添加具有大小、颜色和 alpha 的圆形渲染器
p.circle([1, 2, 3, 4, 5], [4, 7, 1, 6, 3],
		size = 10, color = "navy", alpha = 0.5)

# 显示结果
show(p)

输出 :

image.png

代码 #2: 单行
要创建单行,使用 line() 方法。

# 导入模块
from bokeh.plotting import figure, output_notebook, show

# 输出到 notebook
output_notebook()

# 创建图
p = figure(plot_width = 400, plot_height = 400)

# 添加线渲染器
p.line([1, 2, 3, 4, 5], [3, 1, 2, 6, 5],
		line_width = 2, color = "green")

# 显示结果
show(p)

输出 :

image.png

代码 #3: 条形图
条形图用矩形条显示分类数据。条的长度与表示的值成比例。

# 导入必要的模块
import pandas as pd
from bokeh.charts import Bar, output_notebook, show

# 输出到 notebook
output_notebook()

# 读取数据框中的数据
df = pd.read_csv(r"D:/kaggle/mcdonald/menu.csv")

# 创建栏
p = Bar(df, "Category", values = "Calories",
		title = "Total Calories by Category",
						legend = "top_right")

# 显示结果
show(p)

输出 :

image.png

代码#4: 箱线图
箱线图用于表示图表上的统计数据。它有助于总结数据中存在的各种数据组的统计属性。

# 导入必要的模块
from bokeh.charts import BoxPlot, output_notebook, show
import pandas as pd

# 输出到 notebook
output_notebook()

# 读取数据框中的数据
df = pd.read_csv(r"D:/kaggle / mcdonald / menu.csv")

# 创建栏
p = BoxPlot(df, values = "Protein", label = "Category",
			color = "yellow", title = "Protein Summary (grouped by category)",
			legend = "top_right")

# 显示结果
show(p)

输出 :

image.png

代码#5: 直方图
直方图用于表示数值数据的分布。直方图中矩形的高度与类间隔中值的频率成正比。

# 导入必要的模块
from bokeh.charts import Histogram, output_notebook, show
import pandas as pd

# 输出到 notebook
output_notebook()

# 读取数据框中的数据
df = pd.read_csv(r"D:/kaggle / mcdonald / menu.csv")

# 创建直方图
p = Histogram(df, values = "Total Fat",
			title = "Total Fat Distribution",
			color = "navy")

# 显示结果
show(p)

输出 :

image.png

代码 #6: 散点图
散点图用于绘制数据集中两个变量的值。它有助于找到所选的两个变量之间的相关性。

# 导入必要的模块
from bokeh.charts import Scatter, output_notebook, show
import pandas as pd

# 输出到 notebook
output_notebook()

# 读取数据框中的数据
df = pd.read_csv(r"D:/kaggle / mcdonald / menu.csv")

# 创建散点图
p = Scatter(df, x = "Carbohydrates", y = "Saturated Fat",
			title = "Saturated Fat vs Carbohydrates",
			xlabel = "Carbohydrates", ylabel = "Saturated Fat",
			color = "orange")

# 显示结果
show(p)

输出:

image.png

参考文档: https ://bokeh.pydata.org/en/latest/

感谢大家的阅读,有什么问题的话可以在评论中告诉我。希望大家能够给我来个点赞+收藏+评论 ,你的支持是海海更新的动力!后面我会持续分享前端 & 后端相关的专业知识。