jupyter复杂图表
时间: 2024-12-31 15:41:35 浏览: 45
### 如何在 Jupyter Notebook 中制作复杂图表
#### 安装所需库
为了能够在 Jupyter Notebook 中生成饼状图、热力图、树状图和小提琴图等复杂图表,需确保已安装 `Jupyter`、`pandas`、`matplotlib` 和 `seaborn` 库。可利用如下命令完成这些包的安装:
```bash
pip install jupyter pandas matplotlib seaborn plotly dash pyecharts
```
#### 导入库文件
启动 Jupyter Notebook 创建新的 Notebook 文件之后,在第一个单元格内输入以下代码片段以加载必要的 Python 库。
```python
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from pyecharts.charts import Tree, Pie, Violin
sns.set_theme()
%matplotlib inline
```
#### 制作不同类型图表
##### 饼状图 (Pie Chart)
通过调用 Matplotlib 提供的功能绘制简单的饼形统计图形表示分类数据的比例关系。
```python
labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0)
fig1, ax1 = plt.subplots()
ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%',
shadow=True, startangle=90)
ax1.axis('equal')
plt.show()
```
##### 热力图 (Heatmap)
借助 Seaborn 可方便快捷地构建出二维数组形式的数据分布情况直观展现矩阵中的数值大小差异。
```python
flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
f, ax = plt.subplots(figsize=(9, 6))
sns.heatmap(flights, annot=True, fmt="d", linewidths=.5, ax=ax)
```
##### 小提琴图 (Violin Plot)
同样来自 Seaborn 的函数能够很好地呈现多组样本内部结构特征及其概率密度估计曲线形态对比分析。
```python
tips = sns.load_dataset("tips")
sns.violinplot(x="day", y="total_bill", hue="smoker",
data=tips, palette="muted")
plt.show()
```
##### 树状图 (Tree Map)
虽然原生 Matplotlib 不直接支持此类型的绘图操作,但是 PyEcharts 能够弥补这一缺憾,并且提供了更加丰富的配置选项满足个性化需求。
```python
data = [
{"name": "A", "value": 10},
{"name": "B", "children": [{"name": "C", "value": 2}, {"name": "D", "value": 8}]},
]
tree_chart = Tree().add("", [data], orient='TB')
tree_chart.render_notebook() # 如果是在 JupyterLab 或者其他环境则应使用 render 方法保存为 html 文件再打开查看效果
```
以上就是在 Jupyter Notebook 上实现多种高级可视化图形的具体方法[^1]。
阅读全文
相关推荐


















