美文网首页数据可视化
【数据可视化】画个简单的频次直方图

【数据可视化】画个简单的频次直方图

作者: 清梦载星河 | 来源:发表于2019-11-14 22:35 被阅读0次

    一、简单的频次直方图

    相关函数

    plt.hist(x, # 输入数据
         bins=None, # 条数
         range=None, # x轴的范围,参数为元组
         density=None, # 是否以密度的形式,参数为bool
         weights=None, 
         cumulative=False, 
         bottom=None, # y轴的起始位置,参数为数值类型
         histtype='bar', # 线条的类型, {'bar', 'barstacked', 'step', 'stepfilled'}
         align='mid', # 对齐方式,{'left', 'mid', 'right'}
         orientation='vertical', # 轴向,{'horizontal', 'vertical'}
         rwidth=None, 
         log=False, # 单位是否以科学计数法
         color=None, # 颜色
         label=None, 
         stacked=False, 
         normed=None, 
         *, 
         data=None, 
         **kwargs)
    

    简单实现

    #coding:utf-8
    
    %matplotlib inline
    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt
    plt.style.use('seaborn-white')
    plt.rcParams['font.sans-serif']=['SimHei']
    plt.rcParams['axes.unicode_minus']=False
    plt.rcParams['figure.figsize'] = (10,4)
    plt.rcParams['figure.dpi'] = 300
    # 准备数据
    data = np.random.normal(0,10,1000)
    # 画图
    plt.hist(data,
             bins=50,
             alpha=0.5,
             color='b',
             histtype='stepfilled',
             density=True,
             align='mid'
            )
    
    简单的频次直方图

    二、二维频次直方图

    相关函数

    • plt.hist2d():二维频次直方图
    • plt.hexbin():六边形区间划分

    简单实现

    # 准备数据
    mean = [0,0]
    cov = [[1,1],[1,2]]
    x,y = np.random.multivariate_normal(mean,cov,10000).T
    
    # 二维频次直方图
    plt.hist2d(x,y,bins=30,cmap='Blues')
    cb = plt.colorbar()
    cb.set_label('count in bin')
    
    # 六边形区间划分
    plt.hexbin(x,y,gridsize=30,cmap='Blues')
    cb = plt.colorbar(label='count in bin')
    
    二维频次直方图 六边形区间划分

    相关文章

      网友评论

        本文标题:【数据可视化】画个简单的频次直方图

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