小编cjo*_*ley的帖子

在R中导入具有网状的matplotlib

我刚刚开始在R中使用网状包,我仍然会发现一些问题.特别是,导入matplotlib并不顺利.我尝试了两种不同的方式,每种方式都有不同的错误信息.

首先,在RStudio的交互式shell中使用repl_python:

library(reticulate)
use_python('/home/craig/anaconda3/bin/python')
py_discover_config()
repl_python()
import matplotlib.pyplot as plt
Run Code Online (Sandbox Code Playgroud)

打开的REPL Python shell似乎有正确的版本和所有内容,但是当我尝试导入matplotlib.pyplot时,我看到以下内容:

ImportError:/lib/x86_64-linux-gnu/libz.so.1:找不到版本`ZLIB_1.2.9'(/home/craig/anaconda3/lib/python3.6/site-packages/matplotlib/../ ../.././libpng16.so.16)

安装zlib(使用sudo apt-get install lib64z1-dev lib64z1)似乎没有改变任何东西.import matplotlib只要我不需要,FWIW 工作得很好pyplot.

我也尝试在R Markdown文档中做同样的事情:

```{r}
library(reticulate)
py_discover_config()
```

```{python}
import matplotlib.pyplot as plt
```
Run Code Online (Sandbox Code Playgroud)

这次我看到:

py_get_attr_impl(x,name,silent)出错:AtributeError:模块'matplotlib'没有属性'pyplot'调用:... $ .python.builtin.object - > py_get_attr - > py_get_attr_impl - > .Call执行暂停

任何想法可能会发生在这里?

谢谢!

更新:正如我在评论中提到的,安装网格的开发者版本修复了一些问题,但不是全部.如果我尝试运行此Rmd:

```{r}
library(reticulate)
use_python('/home/craig/anaconda3/bin/python')
```

```{python}
import matplotlib.pyplot as plt
```
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

Error in py_run_string_impl(code, local, convert) : 
  ImportError: /home/craig/anaconda3/lib/python3.6/site-packages/PyQt5/../../../libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds

Detailed …
Run Code Online (Sandbox Code Playgroud)

python r matplotlib reticulate

8
推荐指数
1
解决办法
1134
查看次数

如何重新排列 igraph 图中边的顺序?

我正在尝试在 igraph 中制作一个网络图,通过对某些重要边缘进行不同的着色来突出显示某些重要边缘。对于大图,它们经常被埋在其他图下面。例如:

library(igraph)
test <- barabasi.game(200,m=2)
E(test)$color <- "gray"
E(test)[1]$color <- "red"
sort(order(E(test)$color)[E(test)],decreasing=TRUE)
plot(test,
     vertex.label=NA,
     vertex.shape="none",
     vertex.size=0,
     edge.arrow.mode=0,
     edge.width=2) 
Run Code Online (Sandbox Code Playgroud)

给我一个图,其中单个红色边缘位于底部。 这个情节让我很难过 如果我选择对编号较高的边(而不是#1)进行着色,则它更有可能不被掩埋。

所以在我看来,一种选择是以某种方式重新排列边缘。我试过

E(test) <- E(test)[order(E(test)$color)]
Run Code Online (Sandbox Code Playgroud)

但这给我带来了“无效索引”错误。关于我还应该尝试什么的任何想法?

r igraph

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

将NetworkX与matplotlib.ArtistAnimation一起使用

我想要做的是创建一个动画,其中图形的节点随时间改变颜色.当我在matplotlib中搜索有关动画的信息时,我通常会看到如下所示的示例:

#!/usr/bin/python

import numpy as np
import matplotlib
import matplotlib.pyplot as plt
from matplotlib.animation import ArtistAnimation

fig = plt.figure(figsize=(8,8))
images = []
for i in range(10):
  data = np.random.random(100).reshape(10,10)
  imgplot = plt.imshow(data)
  images.append([imgplot])
anim = ArtistAnimation(fig, images, interval=50, blit=True)
anim.save('this-one-works.mp4')
plt.show()
Run Code Online (Sandbox Code Playgroud)

所以我想我可以这样做:

#!/usr/bin/python

import numpy as np
import networkx as nx
import matplotlib
import matplotlib.pyplot as plt
from matplotlib.animation import ArtistAnimation

G = nx.Graph()
G.add_edges_from([(0,1),(1,2),(2,0)])
fig = plt.figure(figsize=(8,8))
pos=nx.graphviz_layout(G)
images = []
for i in range(10):
  nc = np.random.random(3)
  imgplot …
Run Code Online (Sandbox Code Playgroud)

python matplotlib networkx

4
推荐指数
1
解决办法
2473
查看次数

R中的两样本卡方检验

我真的是R的新手,所以请多多包涵。我正在使用卡方检验比较给定位置的核苷酸频率,并在两个不同的数据集中计算了A,C,G,T的数量:

x1 <- c(272003,310418,201601,237168)
x2 <- c(239614,316515,182070,198025)
Run Code Online (Sandbox Code Playgroud)

我可以想到两种方法来进行两样本卡方检验:

> chisq.test(x1,x2)

    Pearson's Chi-squared test

data:  x1 and x2
X-squared = 12, df = 9, p-value = 0.2133

Warning message:
In chisq.test(x1, x2) : Chi-squared approximation may be incorrect
Run Code Online (Sandbox Code Playgroud)

要么

> chisq.test(cbind(x1,x2))

    Pearson's Chi-squared test

data:  cbind(x1, x2)
X-squared = 2942.065, df = 3, p-value < 2.2e-16
Run Code Online (Sandbox Code Playgroud)

我怀疑第二个版本是正确的,因为我也可以这样做:

> chisq.test(x1,x1)

    Pearson's Chi-squared test

data:  x1 and x1
X-squared = 12, df = 9, p-value = 0.2133

Warning message:
In chisq.test(x1, x1) : …
Run Code Online (Sandbox Code Playgroud)

r chi-squared

3
推荐指数
1
解决办法
4715
查看次数

标签 统计

r ×3

matplotlib ×2

python ×2

chi-squared ×1

igraph ×1

networkx ×1

reticulate ×1