Pandas xlsxwriter 将数据框写入 Excel 并实现列宽和边框相关格式

作者:编程家 分类: excel 时间:2025-09-24

使用Pandas和xlsxwriter库,我们可以将数据框写入Excel并实现列宽和边框相关格式。这使得数据的可视化更加直观和易于理解。接下来,我们将以一个案例来说明如何使用这些库来实现这些功能。

案例:销售数据分析

假设我们有一份销售数据的数据框,其中包含了产品名称、销售数量和销售金额等信息。我们希望将这些数据写入Excel,并设置列宽和边框相关格式,以便更好地呈现数据。

首先,我们需要导入所需的库:

python

import pandas as pd

import xlsxwriter

接下来,我们创建一个数据框来模拟销售数据:

python

data = {'产品名称': ['A', 'B', 'C', 'D'],

'销售数量': [100, 200, 150, 120],

'销售金额': [1000, 2500, 1800, 1500]}

df = pd.DataFrame(data)

现在,我们可以创建一个Excel文件,并将数据框写入其中:

python

filename = 'sales_data.xlsx'

# 创建一个Excel写入器

writer = pd.ExcelWriter(filename, engine='xlsxwriter')

# 将数据框写入Excel

df.to_excel(writer, sheet_name='销售数据', index=False)

# 关闭写入器

writer.save()

现在,我们已经将数据框写入了Excel文件中。接下来,我们可以设置列宽和边框相关格式来美化数据。

python

# 打开Excel文件

workbook = xlsxwriter.Workbook(filename)

# 打开销售数据工作表

worksheet = workbook.get_worksheet_by_name('销售数据')

# 设置列宽

worksheet.set_column('A:A', 12)

worksheet.set_column('B:C', 10)

# 设置边框格式

border_format = workbook.add_format({'border': 1})

# 设置标题行的边框

worksheet.conditional_format('A1:C1', {'type': 'no_blanks', 'format': border_format})

# 设置数据行的边框

worksheet.conditional_format('A2:C5', {'type': 'no_blanks', 'format': border_format})

# 关闭Excel文件

workbook.close()

在上述代码中,我们使用`set_column`函数来设置每一列的宽度,使用`add_format`函数来定义边框格式。然后,我们使用`conditional_format`函数来应用边框格式到标题行和数据行。

最后,我们保存并关闭Excel文件。现在,我们可以打开该文件,并看到已经设置好的列宽和边框相关格式。

使用Pandas和xlsxwriter库,我们可以轻松地将数据框写入Excel,并设置列宽和边框相关格式。这使得数据的可视化更加直观和易于理解。无论是进行数据分析还是报告撰写,这些功能都非常实用。希望本文能帮助你更好地使用Pandas和xlsxwriter库来处理Excel数据。