用py这一个读取csv文件并画饼图,条形图,热力图的程序然后将三个图合并在一起
时间: 2024-03-17 19:43:12 浏览: 17
好的,以下是读取CSV文件并绘制饼图、条形图和热力图的Python程序,同时将三个图合并在一起的代码:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
# 读取CSV文件
data = pd.read_csv('data.csv')
# 绘制饼图
fig1, ax1 = plt.subplots()
ax1.pie(data['value'], labels=data['label'], autopct='%1.1f%%', startangle=90)
ax1.axis('equal')
# 绘制条形图
fig2, ax2 = plt.subplots()
ax2.bar(data['label'], data['value'])
# 绘制热力图
pivot_table = pd.pivot_table(data, values='value', index='label1', columns='label2')
fig3, ax3 = plt.subplots()
sns.heatmap(pivot_table, cmap='YlGnBu', annot=True, fmt='g')
# 合并三个图
fig, (ax1, ax2, ax3) = plt.subplots(ncols=3, figsize=(10, 4))
fig.subplots_adjust(wspace=0.4)
fig.suptitle('Data Analysis')
ax1.pie(data['value'], labels=data['label'], autopct='%1.1f%%', startangle=90)
ax1.axis('equal')
ax2.bar(data['label'], data['value'])
sns.heatmap(pivot_table, cmap='YlGnBu', annot=True, fmt='g', ax=ax3)
plt.show()
```
说明:
1. 首先使用pandas库读取CSV文件;
2. 然后分别使用matplotlib库绘制饼图、条形图,和使用seaborn库绘制热力图;
3. 最后使用matplotlib库将三个图合并在一起,其中fig.subplots_adjust()是用来调整子图之间的间距,fig.suptitle()是用来设置整个图的标题。
希望这个程序能够帮到你,如果你还有其他问题或者需要进一步的帮助,可以随时提出。