2017-03-09 5 views
-2
def plot_coexpression(new, gene1='', gene2='', gene3='', gene4='', gene5='', gene6=''): 
    X, Y = zip(*new) 
    import seaborn as sns 
    sns.set() 
    import matplotlib.pyplot as plt 
    %matplotlib inline 
    plt.figure(figsize = (20, 10)) 
    plt.title('Genes most commonly co-expressed with' gene1="axin", gene2="lef", gene3="lgr", gene4="nkd", gene5="", gene6="", fontsize=40) 

    ax = plt.bar(range(len(X)), Y, 0.6, align='center', tick_label = X, color="green") 
    ax = plt.xticks(rotation=90) 


    File "<ipython-input-3-a3383d66ce8c>", line 8 
    plt.title('Genes most commonly co-expressed with' gene1="axin", gene2="lef", gene3="lgr", gene4="nkd", gene5="", gene6="", fontsize=40) 

plt.title( 'gene1 = "axin"、gene2と最もよく共通する遺伝子gene3 = "lgr"、gene4 = "nkd"、gene5 = ""、gene6 = "")書く関数:plt.title()のオプションの引数を持つpltの棒グラフ

gene1からgene6までの名前は、私の機能では省略可能な引数です。定義されていない場合、それらはプロットタイトルに表示されるべきではありません。

この代替コードは動作しません。

def plot_coexpression(new, gene1=None, gene2=None, gene3=None, gene4=None, gene5=None, gene6=None): 
    X, Y = zip(*new) 
    plt.figure(figsize = (20, 10)) 
    plt.title('Genes most commonly co-expressed with' gene1, gene2, gene3, gene4, gene5, gene6,"'", fontsize=40) 
    ax = plt.bar(range(len(X)), Y, 0.6, align='center', tick_label = X, color="green") 
    ax = plt.xticks(rotation=90) 

答えて

0

単純に任意の引数を期待できない関数に入れることはできません。

plt.titleは、入力として文字列を期待しています。列を生成

format方法

mytitle = "This is my title, containing {gene1}".format(gene1="axin") 
plt.title(mytitle) 
を用いて行うことができます
関連する問題