小编Ben*_*Ben的帖子

使用Python的win32com加载Excel加载项

我从这里的各种问题中看到,如果使用以下方法从Python打开Excel实例:

xl = win32com.client.gencache.EnsureDispatch('Excel.Application')
xl.Visible = True
wb = xl.Workbooks.Open('Test.xlsx')
Run Code Online (Sandbox Code Playgroud)

然后它不加载默认加载项.我尝试通过运行强制加载加载项:

xl = win32com.client.gencache.EnsureDispatch('Excel.Application')
xl.Visible = True
addin = xl.Workbooks.Open('C:/path/addIn.xll')
wb = xl.Workbooks.Open('Test.xlsx')
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做时,Excel的一个实例打开,我收到一条安全消息,要求我验证我是否要打开此加载项.如果我单击"仅为此会话启用此加载项",Excel将立即关闭,并且不会打开我想要的xlsx文件.

有没有人有任何想法如何强制加载项加载,然后允许我打开我的文件?

非常感谢您的帮助!

python excel win32com

5
推荐指数
2
解决办法
5021
查看次数

使用FigureCanvasQTAgg时,不同的DataFrame绘制行为

我正在尝试创建一个包含在pandas DataFrame中的几个数据系列的图.我们df以一个例子为例:

import pandas as pd
import matplotlib.pyplot as plt

d = {'1': [1,2,3], '2': [1,4,9]}
df = pd.DataFrame(d)
df.plot()
plt.show()
Run Code Online (Sandbox Code Playgroud)

此代码生成一个包含两个不同数据系列的简单折线图:

两条线的情节

但是,如果我尝试使用PyQt小部件创建相同的绘图FigureCanvasQTAgg,我只会得到一行.我的第二个例子的代码更多涉及:

import pandas as pd
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.figure import Figure
from PyQt4.QtGui import QWidget, QSizePolicy, QApplication

class DisplayWidget( QWidget ):
    def __init__(self, parent=None):
        super( DisplayWidget, self).__init__( parent )

        self.initUI()

        d = {'1': [1,2,3], '2': [1,4,9]}        
        self.df = pd.DataFrame(d)
        self.canvas.plot_data_frame(self.df)

    def initUI(self):

        self.canvas = PlotCanvas(self)

class PlotCanvas(FigureCanvas):
    def __init__(self, parent=None, …
Run Code Online (Sandbox Code Playgroud)

python pyqt matplotlib pyqt4 pandas

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

标签 统计

python ×2

excel ×1

matplotlib ×1

pandas ×1

pyqt ×1

pyqt4 ×1

win32com ×1