cumulative distribution plots python

前端 未结 5 1505
刺人心
刺人心 2020-12-13 02:37

I am doing a project using python where I have two arrays of data. Let\'s call them pc and pnc. I am required to plot a cumulative distribution of both of

5条回答
  •  悲&欢浪女
    2020-12-13 02:58

    In order to add my own contribution to the community, here I share my function for plotting histograms. This is how I understood the question, plotting the histogram and the cumulative histograme at the same time :

    def hist(data, bins, title, labels, range = None):
      fig = plt.figure(figsize=(15, 8))
      ax = plt.axes()
      plt.ylabel("Proportion")
      values, base, _ = plt.hist( data  , bins = bins, normed=True, alpha = 0.5, color = "green", range = range, label = "Histogram")
      ax_bis = ax.twinx()
      values = np.append(values,0)
      ax_bis.plot( base, np.cumsum(values)/ np.cumsum(values)[-1], color='darkorange', marker='o', linestyle='-', markersize = 1, label = "Cumulative Histogram" )
      plt.xlabel(labels)
      plt.ylabel("Proportion")
      plt.title(title)
      ax_bis.legend();
      ax.legend();
      plt.show()
      return
    

    if anyone wonders how it looks like, please take a look (with seaborn activated):

    Also, concerning the double grid (the white lines), I always used to struggle to have nice double grid. Here is an interesting way to circumvent the problem: How to put grid lines from the secondary axis behind the primary plot?

提交回复
热议问题