Python学习计划——7.2数据可视化

数据可视化是数据分析的重要组成部分,通过图表和图形将数据直观地展示出来,帮助我们发现数据中的模式和趋势。Python中常用的数据可视化库有matplotlibseaborn。以下是对这些库的详细讲解及可运行的Python案例。

1. matplotlib

matplotlib 是一个强大的绘图库,可以生成各种类型的图表,如折线图、柱状图、散点图等。

示例1:折线图
import matplotlib.pyplot as plt
import numpy as np

# 创建数据
x = np.linspace(0, 10, 100)
y = np.sin(x)

# 创建折线图
plt.plot(x, y, label='sin(x)')
plt.xlabel('x')
plt.ylabel('y')
plt.title('Sine Wave')
plt.legend()
plt.show()
示例2:柱状图
import matplotlib.pyplot as plt

# 创建数据
categories = ['A', 'B', 'C', 'D']
values = [3, 7, 5, 4]

# 创建柱状图
plt.bar(categories, values, color='blue')
plt.xlabel('Category')
plt.ylabel('Value')
plt.title('Bar Chart')
plt.show()
示例3:散点图
import matplotlib.pyplot as plt
import numpy as np

# 创建数据
x = np.random.rand(50)
y = np.random.rand(50)
colors = np.random.rand(50)
sizes = 1000 * np.random.rand(50)

# 创建散点图
plt.scatter(x, y, c=colors, s=sizes, alpha=0.5, cmap='viridis')
plt.xlabel('X')
plt.ylabel('Y')
plt.title('Scatter Plot')
plt.colorbar()  # 显示颜色条
plt.show()
2. seaborn

seaborn 是一个基于matplotlib的高级绘图库,提供了更高级的接口和更美观的默认样式。

示例1:分布图
import seaborn as sns
import numpy as np

# 创建数据
data = np.random.randn(1000)

# 创建分布图
sns.histplot(data, kde=True)
plt.title('Histogram with Density Plot')
plt.show()
示例2:箱线图
import seaborn as sns
import pandas as pd

# 创建数据
data = pd.DataFrame({
    'Category': ['A', 'A', 'B', 'B', 'C', 'C'],
    'Value': [10, 15, 14, 18, 13, 17]
})

# 创建箱线图
sns.boxplot(x='Category', y='Value', data=data)
plt.title('Box Plot')
plt.show()
示例3:热力图
import seaborn as sns
import numpy as np

# 创建数据
data = np.random.rand(10, 12)

# 创建热力图
sns.heatmap(data, annot=True, fmt='.1f')
plt.title('Heatmap')
plt.show()
3. 可运行的Python案例

下面是一个完整的Python程序,综合使用了matplotlibseaborn库,演示了多种类型的图表。

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

# 1. 使用matplotlib创建折线图
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.figure()
plt.plot(x, y, label='sin(x)')
plt.xlabel('x')
plt.ylabel('y')
plt.title('Sine Wave')
plt.legend()
plt.show()

# 2. 使用matplotlib创建柱状图
categories = ['A', 'B', 'C', 'D']
values = [3, 7, 5, 4]
plt.figure()
plt.bar(categories, values, color='blue')
plt.xlabel('Category')
plt.ylabel('Value')
plt.title('Bar Chart')
plt.show()

# 3. 使用matplotlib创建散点图
x = np.random.rand(50)
y = np.random.rand(50)
colors = np.random.rand(50)
sizes = 1000 * np.random.rand(50)
plt.figure()
plt.scatter(x, y, c=colors, s=sizes, alpha=0.5, cmap='viridis')
plt.xlabel('X')
plt.ylabel('Y')
plt.title('Scatter Plot')
plt.colorbar()
plt.show()

# 4. 使用seaborn创建分布图
data = np.random.randn(1000)
plt.figure()
sns.histplot(data, kde=True)
plt.title('Histogram with Density Plot')
plt.show()

# 5. 使用seaborn创建箱线图
data = pd.DataFrame({
    'Category': ['A', 'A', 'B', 'B', 'C', 'C'],
    'Value': [10, 15, 14, 18, 13, 17]
})
plt.figure()
sns.boxplot(x='Category', y='Value', data=data)
plt.title('Box Plot')
plt.show()

# 6. 使用seaborn创建热力图
data = np.random.rand(10, 12)
plt.figure()
sns.heatmap(data, annot=True, fmt='.1f')
plt.title('Heatmap')
plt.show()

可以将上面的代码复制到你的IDE中运行,观察程序的输出。在运行之前,请确保使用pip安装了所需的库:

pip install matplotlib seaborn numpy pandas

这个案例综合了matplotlibseaborn库的基本使用,帮助你理解和掌握数据可视化的操作。继续加油,学习Python会越来越有趣和有用!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值