美文网首页单细胞组学Cytoscape网络图
【Cytoscape网络图绘制】摸索入门篇

【Cytoscape网络图绘制】摸索入门篇

作者: Geekero | 来源:发表于2020-09-18 16:43 被阅读0次

    这个软件就是为了绘制网络关系图,圈图等等酷炫的图片,例如这样:

    Cytoscape官网

    一、配置环境和安装

    安装Java 11

    Java 11下载地址


    Java11安装教程
    无脑点击安装,我这里手动改到安装在D盘,而非默认的C盘

    环境变量配置
    进入环境变量配置界面: 电脑->右键属性->高级系统设置->环境变量

    添加JAVA_HOME变量:


    添加path变量的值:



    打开cmd界面,输入java验证

    二、安装Cytoscape

    官网下载不了,让朋友发了我一个



    安装成功 打开:


    三、绘图

    3.1 构建输入文件

    其实这种网络图,要的就是一个边EDGE,和节点node的信息(每列按tab分割符分割)

    从pySCENIC的regulon打分矩阵中提取需要的信息:

    regulons = [r.rename(r.name.replace('(+)','')) for r in regulons]
    edge = [{r.name:list(r.gene2weight.items())} for r in regulons]
    
    #寻找score最大的基因和得分
    line = []
    regulon_dict = dict()
    for item in edge:
        regulon = item.keys()
        regulon = list(regulon)[0]
        record = dict()
        best_score = 0
        for group in item[regulon]:
            gene, score = group[0], group[1]
            if score > best_score:
                regulon_dict[regulon] = {gene:score}
                best_score = score
    #写入文件
    with open('/share/nas1/Data/Users/luohb/Personalization/paper/07.Cytoscape/edge.tsv', 'w') as f:
        f.write('regulons\tgene\tscore\n')
        for item in regulon_dict.items():
            regulon = item[0]
            group = item[1]
            gene, score = list(group.keys())[0], list(group.values())[0]
            row = '{}\t{}\t{}\n'.format(regulon, gene, score)
    
            f.writelines(row)
    

    导入到R中筛选每个regulon的top10基因(Python有点麻烦)

    edge<-read.table('edge.tsv', sep='\t',header=T)
    top10.edge = edge %>% group_by(regulons) %>% top_n(n=10,  wt = score)
    write.table(top10.edge, file='top10.edge.tsv', sep='\t',quote=F, col.names=T,row.names=F)
    

    文件1: EDGE文件:记录 节点关系信息 和 边的宽度信息

    列的排列位置不重要,因为导入到Cytoscape可以选择

    文件2: Node文件:记录每个节点的分组信息(不同的分组颜色)


    3.2 Cytoscape可视化

    1. 导入EDGE文件:




    2. 导入Node文件



    参考

    相关文章

      网友评论

        本文标题:【Cytoscape网络图绘制】摸索入门篇

        本文链接:https://www.haomeiwen.com/subject/ucolyktx.html