【发布时间】:2017-03-15 17:17:21
【问题描述】:
在我的计算机(Windows 10、Python 2.7 x86)上安装 RPY2(v. 2.7.8)和随附的依赖项后,Matplotlib(v. 1.5.3)似乎已损坏。即使是最简单的绘图,框架和窗口也是分开描绘的:
series1 = pd.Series(np.arange(500))
series2 = series1*-1
plt.plot(series1,series2)
# OUT: [<matplotlib.lines.Line2D object at 0x185F4A50>]
plt.show()
以下导入会出错。
# general
import os
from os import path # necessary for check file-overwrite
import calendar
import datetime
import csv
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import imp
# cvxEDA
from scipy import signal
citi = imp.load_source('cvxeda', 'D:\\Python27\\Lib\\cvxEDA\\src\\cvxEDA.py')
#RPY and RHRV
import rpy2
import rpy2.robjects as robjects
import rpy2.robjects.packages as rpackages
from rpy2.robjects.packages import importr# This step is importing the R package in the embedded R,
# and is exposing all R objects in that package as Python objects
# import R's "base" package
base = importr('base')
# import R's "utils" package
utils = importr('utils')
# select a mirror for R packages
utils.chooseCRANmirror(ind=1) # select the first mirror in the list
rhrv = importr('RHRV')
更新:
我已将问题追溯到以下导入rhrv = importr('RHRV')。 RHRV 是 R 的心率分析包,它包括自己的绘图功能(用于 R)。这可能是一个令人不安的问题。
以前有人遇到过这个问题吗?出了什么问题,我该如何解决?
【问题讨论】:
-
如果您能提供一些“假”数据,我们可以尝试重现问题,这将很有帮助。
-
@Koga 是的。在过去的几周里,这种情况已经发生了好几次。它似乎与数据类型无关。我会在帖子中添加一些数据。
-
你在正常运行脚本
python script.py时会遇到同样的问题吗? Shell 可能会使用一些功能(让生活更轻松),这会产生问题。 -
我重新排列了整个问题。显然,当一些进口消失时,问题并没有继续存在。我现在正在尝试通过反复试验来确定问题。
-
@RobinKramer -
rpy2本身并没有触及 matplotlib 命名空间,但可能发生的情况是 R 包 RHRV 正在导入与 matplotlib 中的 C 级代码冲突的 C 库。跨度>
标签: python python-2.7 matplotlib rpy2