2017-04-17 127 views
2

pandas 'excel writerでフォント名を設定できますか?ここで パンダ `to_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() 
それが作成された後、私は xlsxwriter.format.Formatオブジェクトを渡すことができ

答えて

2

はこれを試してみてください:

df = pd.DataFrame([[1,2,3],[4,5,6]], columns=list('abc')) 

pd.formats.format.header_style = None 

writer = pd.ExcelWriter("d:/temp/test.xlsx") 

df.to_excel(writer, index= False) 

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

fmt = writer.book.add_format({"font_name": "Arial"}) 
worksheet.set_column('A:Z', None, fmt) 
worksheet.set_row(0, None, fmt) 

writer.save() 

XlsxWriterドキュメント:Working with Python Pandas and XlsxWriter

+0

これはほぼ完璧である:それはすべてが、ヘッダのスタイリングで動作します:私はまだ、デフォルトのパンダ大胆かつcalibriを取得し、偶数ラインでそれはあなたが提案するものです( 'pd.formats.format.header_style = None')。私はまた、ライターを作成する前にヘッダースタイルを定義しようとしましたが、同じ結果が得られます。 – gozzilli

+0

@gozzilli、それは私のために適切に働いた。あなたのパンダのバージョンは何ですか? – MaxU

+0

0.19.2 on MacOSX – gozzilli

関連する問題