• 直方图


    在图像上直方图和条形图相似,但是直方图是用来统计数据在某个值上的数量。

     1 # 创建2*2的图像分块,并获取每个分块
     2 fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, sharex=True)
     3 axs = [ax1,ax2,ax3,ax4]
     4 
     5 # 分别用正态分布得到10,100,1000,10000个点
     6 for n in range(0,len(axs)):
     7     sample_size = 10**(n+1)
     8     sample = np.random.normal(loc=0.0, scale=1.0, size=sample_size)
     9     axs[n].hist(sample)
    10     axs[n].set_title('n={}'.format(sample_size))

     1 # 调整bins到100,增加横坐标的数量
     2 fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, sharex=True)
     3 axs = [ax1,ax2,ax3,ax4]
     4 
     5 for n in range(0,len(axs)):
     6     sample_size = 10**(n+1)
     7     sample = np.random.normal(loc=0.0, scale=1.0, size=sample_size)
     8    #通过修改bins更改横坐标的数量
     9     axs[n].hist(sample, bins=100)
    10     axs[n].set_title('n={}'.format(sample_size))

    1 plt.figure()
    2 Y = np.random.normal(loc=0.0, scale=1.0, size=10000)
    3 X = np.random.random(size=10000)
    4 plt.scatter(X,Y)

    1 # use gridspec to partition the figure into subplots
    2 import matplotlib.gridspec as gridspec
    3 
    4 plt.figure()
    #通过把图分成3*3的9块区域,来自定义子图
    5 gspec = gridspec.GridSpec(3, 3) 6 7 top_histogram = plt.subplot(gspec[0, 1:]) 8 side_histogram = plt.subplot(gspec[1:, 0]) 9 lower_right = plt.subplot(gspec[1:, 1:])
    对中间的图进行绘制
    1
    Y = np.random.normal(loc=0.0, scale=1.0, size=10000) 2 X = np.random.random(size=10000) 3 lower_right.scatter(X, Y) 4 top_histogram.hist(X, bins=100) 5 s = side_histogram.hist(Y, bins=100, orientation='horizontal')
    1 # 对上面和左侧的图进行绘制
    2 top_histogram.clear()
    3 top_histogram.hist(X, bins=100, normed=True)
    4 side_histogram.clear()
    5 side_histogram.hist(Y, bins=100, orientation='horizontal', normed=True)
    6 # flip the side histogram's x axis
    7 side_histogram.invert_xaxis()
    1 # 改变坐标的限制
    2 for ax in [top_histogram, lower_right]:
    3     ax.set_xlim(0, 1)
    4 for ax in [side_histogram, lower_right]:
    5     ax.set_ylim(-5, 5)

    1 %%HTML
    2 <img src='http://educationxpress.mit.edu/sites/default/files/journal/WP1-Fig13.jpg' />

  • 相关阅读:
    HashMap源码分析
    Vector和Stack源码分析/List集合的总结
    LinkedList源码分析
    ArrayList源码分析
    第三章 数据链路层(三)
    Java常考面试题(五)
    hibernate(一) 第一个hibernate工程
    回想过去,展望未来
    “Cannot load php5apache2_4.dll into server”问题的解决方法
    win7下80端口被(Pid=4)占用的解决方法
  • 原文地址:https://www.cnblogs.com/zhengzhe/p/8535747.html
Copyright © 2020-2023  润新知