分享
三行代码  ›  专栏  ›  技术社区  ›  chico0913

如何在seaborn条形图的每个条形图顶部显示y值?

  •  0
  • chico0913  · 技术社区  · 1 周前

    我尝试生成如下条形图:

    
    # generate the bargraphs based on the `stat_list_prop`
    def plot_bargraph_min_error(stat_list_prop, bar_color):
    
        plt.xlabel("Layer")
        plt.ylabel('Probability of Producing the Minimal Error')    
        sns.barplot(x=[x+1 for x in range(7)], y = stat_list_prop, color = bar_color)
    
    stat_list_prop=[0.5,0.1,0.3,0.4,0.6,0.9,0.2]
    
    # generates a bargraph without the numbers
    plot_bargraph_min_error(stat_list_prop,'green')
    

    但是我想把y值显示在我制作的条形图的每一条的顶部。例如,第一个条形图的高度是0.5,所以我希望数字0.5显示在条形图的第一个条形图的顶部。

    我想要的与下图相似,只是我想要的是垂直条形图,而不是水平条形图

    enter image description here

    1 回复  |  直到 1 周前
        1
  •  0
  •   aerijman    1 周前
    # generate the bargraphs based on the `stat_list_prop`
    def plot_bargraph_min_error(stat_list_prop, bar_color):
    
        plt.xlabel("Layer")
        plt.ylabel('Probability of Producing the Minimal Error')    
        sns.barplot(x=[x+1 for x in range(7)], y = stat_list_prop, color = bar_color)
    
        # text legends on each bar
        for n,i in enumerate(stat_list_prop): 
            plt.text(n,i, str(i))   
    
    
    # Your defined list 
    stat_list_prop=[0.5,0.1,0.3,0.4,0.6,0.9,0.2]
     
    # generates a bargraph without the numbers
    plot_bargraph_min_error(stat_list_prop,'green')