小编Nat*_*ent的帖子

在pywin32 outlook电子邮件中发送表格

我使用类似以下代码的东西在Python中自动发送电子邮件.

如何使表格看起来像是从excel复制到电子邮件中(即表格格式)?目前,它将html格式的表视为电子邮件正文中的文本,这是非常无用的.

import win32com.client
import pandas as pd

#Parameters
data= [{'A' : 'data', 'B': 2, 'C':1.78},
      {'A' : 'data', 'B': 22, 'C':1.56},]
table = pd.DataFrame(data)

subject = 'email subject'
body = '<html><body>' + table.to_html() + '</body></html>'
recipient = 'email@domain.com'
attachments = []

#Create and send email
olMailItem = 0x0
obj = win32com.client.Dispatch("Outlook.Application")
newMail = obj.CreateItem(olMailItem)
newMail.Subject = subject
newMail.Body = body
newMail.To = recipient

for location in attachments:
    newMail.Attachments.Add(Source=location)

newMail.display()
newMail.Send()
Run Code Online (Sandbox Code Playgroud)

当我希望它成为一个真正的表时,发送一个看起来像这样的电子邮件:

<html><body><table border="1" class="dataframe"> 
  <thead> 
    <tr style="text-align: left;"> 
      <th>A</th> …
Run Code Online (Sandbox Code Playgroud)

python outlook pywin32

5
推荐指数
1
解决办法
4330
查看次数

如何限制 AmCharts 4 XYChart 中列的最大宽度/高度

是否可以限制 XY 图表中列的最大宽度?我在带有 Typescript 的 Angular 项目中使用 AmCharts4。

下图中:

  • 左图:当我将多行数据发送到 XY 图表时会发生什么
  • 中间图表:当我将一行数据发送到 XY 图表时。
  • 右图:当我将一行数据发送到 XY 图表时,我希望发生什么

有没有办法防止第二个图表的单列扩展太多?如果它扩展就很好,但我希望能够以某种方式限制它。

也许类似? categoryAxis.maxColumnWidth = 50

我在这里检查了文档: https: //www.amcharts.com/docs/v4/tutorials/managing-width-and-spacing-of-column-series/但没有看到任何内容。

在此输入图像描述

typescript amcharts4

5
推荐指数
1
解决办法
3606
查看次数

第一列名称,行大熊猫非空值

我想知道第一年有各种项目的收入.

鉴于以下内容,数据帧:

ID  Y1      Y2      Y3
0   NaN     8       4
1   NaN     NaN     1
2   NaN     NaN     NaN
3   5       3       NaN
Run Code Online (Sandbox Code Playgroud)

我想按行返回第一列的名称,其中包含非空值.

在这种情况下,我想要返回:

['Y2','Y3',NaN,'Y1']
Run Code Online (Sandbox Code Playgroud)

我的目标是将其添加为原始数据框的列.

以下代码主要有效,但真的很笨重.

import pandas as pd
import numpy as np

df = pd.DataFrame({'Y1':[np.nan, np.nan, np.nan, 5],'Y2':[8, np.nan, np.nan, 3], 'Y3':[4, 1, np.nan, np.nan]})
df['first'] = np.nan

for ID in df.index:
row = df.loc[ID,]
for i in range(0,len(row)):
    if (~pd.isnull(row[i])):
        df.loc[ID,'first'] = row.index[i]
        break
Run Code Online (Sandbox Code Playgroud)

收益:

   Y1  Y2  Y3  first
0 NaN  8   4   Y2   
1 NaN …
Run Code Online (Sandbox Code Playgroud)

python numpy pandas

2
推荐指数
1
解决办法
836
查看次数

如何在AmCharts4类别轴上显示所有标签或减少标签填充?

我正在建立一个帕累托图,以显示百分比和按类别计数。能够查看图表上的所有类别标签很重要。当前有足够的空间显示更多类别标签,但轴未显示它们。

是否可以告诉轴显示所有标签,或减少轴标签上的填充/边距,以便可以显示更多标签?

我在Angular应用中使用Typescript。

当前轴创建代码:

let categoryAxis = chart.yAxes.push(new am4charts.CategoryAxis());
categoryAxis .title.text = 'Category';
categoryAxis.dataFields.category = categoryField;
categoryAxis.renderer.fontSize = 12;
Run Code Online (Sandbox Code Playgroud)

问题图片:

发行图片

javascript amcharts typescript

2
推荐指数
1
解决办法
547
查看次数