Matplotlib 与 Seaborn 数据可视化技巧

在数据分析和机器学习中,数据可视化是一项至关重要的技能,可以帮助我们更好地理解数据和挖掘潜在的规律。在 Python 中,Matplotlib 和 Seaborn 是两个常用的数据可视化库。本文将为您介绍它们的基本原理和实际应用,帮助您更好地利用这两个库进行数据可视化。

  1. Matplotlib 简介

Matplotlib 是一个强大的 Python 二维绘图库,提供了丰富的绘图功能,可以实现各种图表的绘制。Matplotlib 的基本绘图单位是 Figure(画布)和 Axes(坐标轴)。

  1. Seaborn 简介

Seaborn 是一个基于 Matplotlib 的高级数据可视化库,提供了更多的绘图类型和更美观的默认样式。Seaborn 可以与 Pandas 数据结构无缝结合,方便地进行数据可视化。

以下是一些常用的 Matplotlib 和 Seaborn 可视化技巧及其实际应用:

一、基本绘图

1.1 线形图

使用 Matplotlib 绘制线形图:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

plt.plot(x, y)
plt.show()

图1

1.2 散点图

使用 Seaborn 绘制散点图:

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt

data = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6]})
sns.scatterplot(data=data, x='x', y='y')
plt.show()

图2

二、自定义图形样式

2.1 Matplotlib 自定义样式

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

plt.plot(x, y, color='red', linestyle='--', linewidth=2)
plt.title('Sin Wave')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
plt.show()

图3

2.2 Seaborn 自定义样式

import seaborn as sns
import pandas as pd

data = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6]})
sns.set_style('whitegrid')  # 设置背景样式
sns.scatterplot(data=data, x='x', y='y', hue='y', palette='coolwarm', size='y', sizes=(50, 200))
plt.show()

图4

三、绘制复杂图形

3.1 Matplotlib 多子图

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

fig, axes = plt.subplots(1, 2)
axes[0].plot(x, y1)
axes[1].plot(x, y2)
plt.show()

图5

3.2 Seaborn 绘制热力图

import seaborn as sns
import numpy as np
import pandas as pd

data = np.random.rand(10, 12)
heatmap_data = pd.DataFrame(data)
sns.heatmap(heatmap_data, cmap='coolwarm', annot=True)
plt.show()

图6

四、保存图像

4.1 Matplotlib 保存图像

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('sin_wave.png', dpi=300)

4.2 Seaborn 保存图像

import seaborn as sns
import pandas as pd

data = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6]})
scatter_plot = sns.scatterplot(data=data, x='x', y='y')

figure = scatter_plot.get_figure()
figure.savefig('scatter_plot.png', dpi=300)

以上就是关于 Matplotlib 和 Seaborn 数据可视化技巧的介绍。希望这些内容能帮助您更好地应用这两个库进行数据可视化。如果您对本文感兴趣,请关注我们并给予打赏,感谢您的支持!

参考文献:

  1. Hunter, J. D. (2007). Matplotlib: A 2D graphics environment. Computing in Science & Engineering, 9(3), 90-95.
  2. Waskom, M. (2021). seaborn: statistical data visualization. Journal of Open Source Software, 6(60), 3021.
  3. McKinney, W. (2010). Data structures for statistical computing in python. In Proceedings of the 9th Python in Science Conference (pp. 51-56).
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PyTechShare

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值