当前位置: 首页 > 面试题库 >

Pandas xlsxwriter,格式标题

颜永怡
2023-03-14
问题内容

我正在使用xlsxwriter将pandas
DataFrame保存为_excel。我已经设法格式化了所有数据(设置列宽,字体大小等),除了更改标题的字体外,我找不到解决方法。这是我的示例:

import pandas as pd
data = pd.DataFrame({'test_data': [1,2,3,4,5]})
writer = pd.ExcelWriter('test.xlsx', engine='xlsxwriter')

data.to_excel(writer, sheet_name='test', index=False)

workbook  = writer.book
worksheet = writer.sheets['test']

font_fmt = workbook.add_format({'font_name': 'Arial', 'font_size': 10})
header_fmt = workbook.add_format({'font_name': 'Arial', 'font_size': 10, 'bold': True})

worksheet.set_column('A:A', None, font_fmt)
worksheet.set_row(0, None, header_fmt)

writer.save()

试图为标题设置格式的倒数第二行不执行任何操作。


问题答案:

我认为您需要先重置默认标题样式,然后才能更改它:

pd.core.format.header_style = None

全部一起:

import pandas as pd

data = pd.DataFrame({'test_data': [1,2,3,4,5]})
writer = pd.ExcelWriter('test.xlsx', engine='xlsxwriter')

pd.core.format.header_style = None

data.to_excel(writer, sheet_name='test', index=False)

workbook  = writer.book
worksheet = writer.sheets['test']

font_fmt = workbook.add_format({'font_name': 'Arial', 'font_size': 10})
header_fmt = workbook.add_format({'font_name': 'Arial', 'font_size': 10, 'bold': True})

worksheet.set_column('A:A', None, font_fmt)
worksheet.set_row(0, None, header_fmt)

writer.save()

在Excel中,单元格格式将覆盖行格式,而列格式将覆盖列格式。pd.core.format.header_style将转换为格式并应用于标题中的每个单元格。因此,默认值不能被覆盖set_row()。设置pd.core.format.header_styleNone表示标头单元格没有用户定义的格式,因此可以将其覆盖set_row()

编辑:在版本中,0.18.1您必须更改

pd.core.format.header_style = None

至:

pd.formats.format.header_style = None

编辑:从版本0.20再次更改

import pandas.io.formats.excel
pandas.io.formats.excel.header_style = None

编辑:从版本0.24现在是必需的

import pandas.io.formats.excel
pandas.io.formats.excel.ExcelFormatter.header_style = None


 类似资料:
  • 传统的中文是没有标点的,需要读者自行断句分词(也就是所谓的“句读”)。现代中文的标点其实从英文借鉴而来,所以中英文的标点与许多是相似的,以下列出常见的中英文标点符号。 中文常见标点符号有:逗号、句号、问号、感叹号、引号、冒号、省略号、破折号、顿号、书名号、分号。 英文常见标点符号有:逗号、句号、问号、感叹号、引号、冒号、省略号、破折号、连字符号、分号。 其中的大部分标点符号的作用是完全一致的,在翻

  • 问题内容: 我遇到了轴刻度标签的格式问题。我禁用了y_axis的偏移量: 并尝试将其设置为科学格式,但我得到的是: 但我期望这样的事情: 或类似。 我真正想要的是这样的: 我可以尝试将标签设置为静态,但是最后我将拥有数十或数百个具有不同值的图,因此需要动态设置。 一种替代方法是将y_axis偏移量放置为标签,但是我也不知道如何执行此操作。 问题答案: 有很多方法可以做到这一点 您可以调整功率限制(

  •        坐标格式转换方法:设置-实验室(可参考10.1)-坐标格式转换        坐标格式转换后,会使应用中所有经纬度信息转换为对应格式 主界面 长按取点 点要素编辑

  • 是否可以在中设置标题格式?当编织到中的时,我希望将表格的标题居中并加粗。我尝试将表包装在一个中,其中文本居中,但这并没有产生预期的结果。 表格示例: 收益率: 我想:

  • 问题内容: 是否存在用于构造来自API的JSON响应的标准或最佳实践?显然,每个应用程序的数据都是不同的,因此您不必担心很多,而是“响应样板”。我的意思的例子: 成功的请求: 请求失败: 问题答案: 是的,已经出现了一些标准(尽管对标准的定义有一些自由): JSON API -JSON API还涵盖创建和更新资源,而不仅仅是响应。 JSend-简单,可能已经在做。 OData JSON协议 -非常

  • 在一个函数图像中,有时自变量 x 与因变量 y 是指数对应关系,这时需要将坐标轴刻度设置为对数刻度。Matplotlib 通过 axes 对象的或属性来实现对坐标轴的格式设置。 示例:右侧的子图显示对数刻度,左侧子图则显示标量刻度。 图1:对数关系图 轴是连接刻度的线,也就是绘图区域的边界,在绘图区域(axes 对象)的顶部、底部、左侧和右侧都有一个边界线(轴)。通过指定轴的颜色和宽度,从而对进行