Ich folgte the style guide for pandas und es funktionierte ziemlich gut.Pandas to_html mit den. Style-Optionen oder benutzerdefinierten CSS?
Wie kann ich diese Stile mithilfe des Befehls to_html über Outlook behalten? Die Dokumentation scheint mir etwas zu fehlen.
(df.style
.format(percent)
.applymap(color_negative_red, subset=['col1', 'col2'])
.set_properties(**{'font-size': '9pt', 'font-family': 'Calibri'})
.bar(subset=['col4', 'col5'], color='lightblue'))
import win32com.client as win32
outlook = win32.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.Subject = subject_name
mail.HTMLbody = ('<html><body><p><body style="font-size:11pt;
font-family:Calibri">Hello,</p> + '<p>Title of Data</p>' + df.to_html(
index=False, classes=????????) '</body></html>')
mail.send
Die to_html Dokumentation zeigt, dass es ein Klasse gebieten, daß ich in der to_html Methode setzen kann, aber ich kann es nicht herausgefunden. Es scheint auch so, als ob mein Datenrahmen nicht den oben angegebenen Stil aufweist.
Wenn ich versuche:
df = (df.style
.format(percent)
.applymap(color_negative_red, subset=['col1', 'col2'])
.set_properties(**{'font-size': '9pt', 'font-family': 'Calibri'})
.bar(subset=['col4', 'col5'], color='lightblue'))
Dann df ist nun ein Style-Objekt und Sie können nicht to_html verwenden.
Edit - das mache ich gerade, um meine Tabellen zu ändern. Das funktioniert, aber ich kann die coolen Funktionen der .style-Methode, die Pandas bietet, nicht behalten.
email_paragraph = """
<body style= "font-size:11pt; font-family:Calibri; text-align:left; margin: 0px auto" >
"""
email_caption = """
<body style= "font-size:10pt; font-family:Century Gothic; text-align:center; margin: 0px auto" >
"""
email_style = '''<style type="text/css" media="screen" style="width:100%">
table, th, td {border: 0px solid black; background-color: #eee; padding: 10px;}
th {background-color: #C6E2FF; color:black; font-family: Tahoma;font-size : 13; text-align: center;}
td {background-color: #fff; padding: 10px; font-family: Calibri; font-size : 12; text-align: center;}
</style>'''
Ich versuchte gestern stundenlang ohne Glück. Ich kann nicht herausfinden, wie man den Datenrahmen in Outlook anpasst. Es sieht hässlich aus (große Schrift). Der Datenrahmen auf meinem Computer sieht gut aus. Er zeigt an, wo die Metrik das Ziel nicht erreicht hat, und hat Balkendiagramme, um die Lautstärke anzuzeigen. Gibt es keine Möglichkeit, das auf der Outlook-E-Mail anzuzeigen? – trench