Tag: xlsxwriter

pandasfromat列多张

使用下面的代码,我设法为每个国家创buildexcel文件,但我无法格式化excel列: df=TOT.reset_index() for n, g in df.groupby('Country'): X = n.strip(" ") out_path = "C:/temp/" + n.strip(" ") + ".xlsx" C =TOTSPPerc.reset_index(level=0)[TOTSP.reset_index(level=0).Country==n].drop('Country', axis=1) B =TOTPerc.reset_index(level=0)[TOTPerc.reset_index(level=0).Country==n].drop('Country', axis=1) A= TOTcntPerc.drop('Country', axis=1) writer = pd.ExcelWriter(out_path , engine='xlsxwriter') format2 = workbook.add_format({'num_format': '0%'}) A.to_excel(writer, sheet_name="Country") B.to_excel(writer, sheet_name="Stores") C.to_excel(writer, sheet_name="SPs") writer.save() print(n) 我需要为每个创build的文件格式化B:F列B:F 。

pandas`to_excel`设置字体名称

是否可以设置pandas的Excel作家的字体名称? 这是我的尝试: import pandas as pd from pandas.io.excel import ExcelWriter df = pd.DataFrame([[1,2,3],[4,5,6]]) writer = ExcelWriter("test.xlsx") writer.set_font_name("Arial") # this would be ideal, but no such method exists format = writer.book.add_format({"font_name": "Arial"}) df.to_excel(writer) # format is not applied. Need to pass `format` object somewhere writer.close() 创build完成后,我可以在哪里传递xlsxwriter.format.Format对象?

Xslxwriter列图表数据标签百分比属性不起作用

我在Excel(2016)中创build了一些柱状图,用python(3.5.3)pandas(0.20.1)创build表格,并用xlsxwriter(0.9.6)创build表格和图表。 我想用相对于所有值的总和的值的百分比来标记每个列,如在这个图像中: Desired Output Chart 基于我对Xslxwriter文档的理解,我只需要在向图表添加一个系列时包含'data_labels':{'percentage': True}属性,就像我在下面的代码中所做的那样: df = pandas.DataFrame(data=[1,2,3,4,5],index=['a','b','c','d','e']) writer = pandas.ExcelWriter('C:/Users/Name_A_Place/sandbox.xlsx') df.to_excel(writer) wrkbk = writer.book wrksht = writer.sheets['Sheet1'] chrt = wrkbk.add_chart({'type':'column'}) chrt.add_series({'categories': '=Sheet1!A2:A6', 'values': '=Sheet1!B2:B6', 'data_labels': {'percentage':True, 'font': {'rotation':-45}}, }) wrksht.insert_chart("E1",chrt) writer.save() 但是,此代码将创build一个没有标签的图表: 实际输出图表 。 我误解百分比数据标签属性的工作原理吗? 我一直在解决这个问题,通过创build一个单独的百分比列,并使用该列'data_labels': {'value': True}标记'data_labels': {'value': True}属性,但是如果有人能够解释为什么我的代码不会产生输出I希望,我将不胜感激。

Xlsx作家不创buildExcel文件,但不创build一个错误

当我在Python中运行这个,我没有得到任何错误。 但是,当我检查保存了我的程序的文件夹时,没有创buildexcel文件。 不知道我做错了什么。 import xlsxwriter workbook = xlsxwriter.Workbook("result.xlsx") worksheet = workbook.add_worksheet() worksheet.write('A1','plz work') workbook.close()

在python中创build饼图

我已经创build了我的饼图,但是现在我正在使用一系列像这样的单元格: chart3.add_series({ 'name': 'Pie data', 'categories': '=Pivots!$A$3:$A$10', 'values': '=Pivots!$F$3:$F$10'}) 这给了我一个在A3-A10中find的类别的饼图和从单元格F3-F10对应的值。 我遇到的问题是不幸的是我并不总是会在每个这些单元格中有数据。 所以我可能有一个工作表中的数据在类别和值可能范围从A3 – A6和值= F3 – F6,有时它只有数据范围从A3 – A9和值= F3 – F9。 我的问题是,当我显示不同的工作表,他们有缺less的领域的传说,我想知道如果他们是一种方式来获得的类别和F3的长度获得的值,所以当我的传说是显示它只显示和表示数据的行。

附加数据框,以大pandas

我希望将数据框追加到excel中 这个代码几乎像愿望一样工作。 虽然每次都不附加。 我运行它,它把数据框架在Excel中。 但是每次运行它都不会追加。 我也听说openpyxl是cpu密集型的,但没有听说过很多解决方法 。 import pandas from openpyxl import load_workbook book = load_workbook('C:\\OCC.xlsx') writer = pandas.ExcelWriter('C:\\OCC.xlsx', engine='openpyxl') writer.book = book writer.sheets = dict((ws.title, ws) for ws in book.worksheets) df1.to_excel(writer, index = False) writer.save() 我希望每次运行数据时都要附加数据,这不会发生。 数据输出看起来像原始数据: ABC HHH 我想在第二次运行后 ABC HHH HHH 道歉,如果这是显而易见的,我新来的python和我练习的例子没有按要求工作。 问题是 – 每次运行我怎样才能追加数据。 我尝试更改为xlsxwriter但获取AttributeError: 'Workbook' object has no attribute 'add_format'

如何在python中使用xlsxwriter将数据从SQLITE导入excel

import sqlite3 from xlsxwriter.workbook import Workbook workbook = Workbook('output2.xlsx') worksheet = workbook.add_worksheet() conn=sqlite3.connect('test.sqlite') c=conn.cursor() c.execute("select * from abc") mysel=c.execute("select * from abc ") for row in mysel: print row worksheet.write(0, 0, row[0]) workbook.close() 这里是SQLITE数据库表的布局 id sno 1 100 2 200 3 300 4 400 与工作sheet.write(0,0,行[0])我在Excel文件的第一个单元格中输出为4 。 与工作sheet.write(0,0,行[1])我在Excel文件的第一个单元格中输出为400 我无法弄清楚FOR LOOP问题。 请帮忙

如何避免在Excel中使用python覆盖单元格?

我正在使用python-2.7和xlsxwriter写入Excel表格。 以下是我的代码… workbook = Workbook('D:\S_details.xlsx') sheet = workbook.add_worksheet() rownum = 2 colnum = 2 for a in student_result: for r, row in enumerate(student_result): for c, col in enumerate(row): bold = workbook.add_format({'bold': 1}) sheet.write('A1','Student_ID',bold) sheet.write('B1','Student_Link',bold) sheet.write('C1','Student_Name',bold) sheet.write('D1','Student_Qualification',bold) sheet.write('E1','Student_Address',bold) sheet.write('F1','Student_City',bold) sheet.write('G1','Student_State',bold) sheet.write('H1','Student_Country',bold) sheet.write('I1','Student_Stream',bold) sheet.write('J1','Student_Gender',bold) sheet.write(r,c,col) rownum = rownum + 1 colnum = colnum + 1 代码运行良好,但从数据库检索的第一个条目被每列的标题覆盖。 因此,只有第一个条目被覆盖,其余条目完全可见。 […]

如何解决Excel的URL限制?

我正在使用优秀的xlsxwriter来用Python构build电子表格。 我已经意识到, 在开始收到警告并且function被门控之前,您只能将4万左右的URL写入表单。 有没有办法把这个url写成string,这样excel应用程序就不会把url解释为打开的string(因此允许我添加无限的url)? 我知道这些url是不可点击的,但在这种情况下对我来说总比没有好。

Xlsx Writer:在单个单元格中编写多种格式的string

我有一个多个分号的string。 'firstline: abc \n secondline: bcd \n thirdline: efg' 我想用下面的Xlsx Writer在excel单元格中写这个string。 第一线 :abc 第二行 :bcd 第三线 :efg 这就是我所做的。 description_combined = ''' firstline: abc secondline: bcd thirdline: efg ''' spanInserted = [] spanInserted = description_combined.split("\n") result = '' for spans in spanInserted: strr1 = '{}:'.format(spans.split(":")[0]) strr2 = spans.split(":")[1] result += '''bold , "{}" , "{}" ,'''.format(str(strr1),str(strr2)) […]