gpt4 book ai didi

python - 如何在python中设置mfrow/mfcol

转载 作者:太空宇宙 更新时间:2023-11-03 15:49:23 24 4
gpt4 key购买 nike

通过 jupyter 中的 rpy2,您可以使用 R 对象直接从 Python 绘制数据。如何在 python 中设置 par(mfrow=c(1,2)

例如,我想从 python 自动输入一个可变大小的矩阵,并使用 rpy2 绘制它(以及其他统计分析)。但我不想绘制单个箱线图,而是希望输出所有箱线图。

这是一些示例代码

import rpy2.ipython
import rpy2.robjects as ro
import scipy as sp
import re #python for regex
from rpy2.robjects.packages import importr
rpy2.robjects.numpy2ri.activate()
%load_ext rpy2.ipython
%R

test=[[1,3,2],[6,5,7,8,9]]

def funtoanalyze(grouparray):
a={}
data=numpy.array(test)
for ig in range(len(grouparray)):
key=grouparray[ig]
value=data[ig]
a[key]=value
next
rbox=ro.r('boxplot')
for gro in a:
datar=a[gro]
ro.r('dev.new()')
rbox(ro.FloatVector(datar[:]),xlab="",main=gro)
return

funtoanalyze(["group33","group2"]) #only plots last group

enter image description here

最佳答案

您使用 %load_ext rpy2.ipython 表明您希望在 jupyter 笔记本中显示您的图形。

R 正在使用“图形设备”来输出数字,并且调用 par(mfrow=c(...)) 会将设置放入打开的图形设备中或打开一个新的默认设备并设置参数。

“魔法”%%R 正在扫描数字是否是在默认设备上生成的,并将其显示在笔记本中。以下内容应该有效:

%%R

par(mfrow=c(1,2))
plot(0, 0)
plot(0, 0)

如果您不想使用 R magic,rpy2 中还有其他适用于 jupyter 笔记本的实用程序。对于绘图,有一个上下文管理器(请参阅 https://bitbucket.org/rpy2/rpy2/issues/330/ipython-plotting-wrapper - 我不记得是否有更多文档),但最先进的实用程序是为 ggplot2 量身定制的。例如检查这张幻灯片和以下幻灯片: https://lgautier.github.io/odsc-ppda-slides/#/5/13

完整的笔记本在这里:

https://github.com/lgautier/odsc-ppda-slides/blob/master/notebooks/slides.ipynb

有一个 docker 容器,其中包含运行笔记本所需的一切:

https://github.com/lgautier/pragmatic-polyglot-data-analysis

关于python - 如何在python中设置mfrow/mfcol,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41445491/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com