python在excel中绘制柱状图并设置EXCEL中第一列为标签
时间: 2024-05-15 08:17:03 浏览: 94
要在Excel中使用Python绘制柱状图并将第一列用作标签,可以使用pandas和openpyxl库。以下是一个示例代码:
```python
import pandas as pd
import openpyxl
from openpyxl.chart import BarChart, Reference, Series
# 读取Excel文件
df = pd.read_excel('data.xlsx')
# 获取标签和数据
labels = df.iloc[:, 0].tolist()
data = df.iloc[:, 1:].values.tolist()
# 创建Excel工作簿和工作表
wb = openpyxl.Workbook()
ws = wb.active
# 将数据写入Excel工作表
for i in range(len(data)):
ws.append([labels[i]] + data[i])
# 创建柱状图并添加到工作表
chart = BarChart()
chart.title = '柱状图'
chart.x_axis.title = '标签'
chart.y_axis.title = '数据'
chart.height = 10
chart.width = 20
# 设置数据范围
data_range = Reference(ws, min_col=2, max_col=len(df.columns), min_row=1, max_row=len(df))
# 设置标签范围
label_range = Reference(ws, min_col=1, max_col=1, min_row=2, max_row=len(df))
# 将数据范围和标签范围添加到柱状图
chart.add_data(data_range)
chart.set_categories(label_range)
# 将柱状图添加到工作表
ws.add_chart(chart, 'D1')
# 保存Excel文件
wb.save('output.xlsx')
```
在此示例代码中,我们首先使用pandas库读取Excel文件,并将标签和数据分别存储在列表中。然后,我们使用openpyxl库创建一个新的Excel工作簿和工作表,并将数据写入该工作表。接下来,我们创建一个柱状图对象,并设置标题、X轴标题和Y轴标题等属性。然后,我们使用openpyxl库的Reference对象指定数据范围和标签范围,并将它们添加到柱状图对象中。最后,我们将柱状图添加到工作表中,并保存Excel文件。