zoukankan      html  css  js  c++  java
  • matplotlib简单图 巩固

    字体
    import matplotlib.pyplot as plt


    plt.rcParams['font.msans-serif']=['SimHei'] #用来正常显示中文标签 plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

    折线图
    plot_params = '''
    参数      接收值             说明                 默认值
    x,y      array        表示 x 轴与 y 轴对应的数据; 无
    color     string       表示折线的颜色;           None
    marker    string       表示折线上数据点处的类型;  None 
    linestyle string       表示折线的类型;            -
    linewidth 数值         线条粗细:      linewidth=1.=5.=0.3 1
    alpha     0~1之间的小数 表示点的透明度;           None
    label     string       数据图例内容:    label=‘实际数据’ None
    '''
    x = df['姓名'].head()
    y = df['交易额'].head()
    # x,y 的值
    plt.title('员工和营业额之间的折线图')
    # 设置标题
    
    
    plt.plot(x, y, color='blue',marker='*',linestyle = '-',
             linewidth = 0.8,alpha = 0.6,label='营业额')
    # 折线图参数
    
    
    plt.legend()
    # 显示图例
    plt.xlabel('员工姓名')
    # 设置 x 轴标题
    plt.xticks(rotation = 45)
    # x 轴的字体倾斜
    plt.ylabel('营业额(元)')
    # 设置 y 轴
    plt.show()


    柱状图
    bar_params = '''
    参数     说明             类型
    x,y      x坐标,y坐标     int,float
    width   宽度 0~1,       默认0.8
    alpha   透明度          0~1之间的小数 
    bottom  条形的起始位置  也是y轴的起始坐标 , 整数
    align   条形的中心位置  "center","lege"边缘
    edgecolor 边框颜色
    linewidth 边框宽度
    color   条形的颜色    "r","b","g","#123465",默认"b"
                        'c', 'r', 'g', 'k', 'y', 'm', 'b'
    '''
    x = df['姓名'].head()
    y = df['交易额'].head()
    # x,y 的值
    plt.title('员工和营业额之间的柱状图')
    # 设置标题
    
    plt.bar(x, y,width = 0.3,bottom = 100,align = 'center',
            edgecolor = 'y',linewidth = 3,color = ['c','r','g','k','y'],
           label='营业额')
    # 柱状图参数
    
    plt.legend()
    # 显示图例
    plt.xlabel('员工姓名')
    # 设置 x 轴标题
    plt.xticks(rotation = 45)
    # x 轴的字体倾斜
    plt.ylabel('营业额(元)')
    # 设置 y 轴
    plt.show()


    散点图
    scatter_params = '''
    参数       说明
    x,y      x轴 和 y轴对应的数据
    c        散点标记的颜色,为指定的色彩、数值序列或者颜色序列。
            'c', 'r', 'g', 'k', 'y', 'm', 'b'
    marker   散点标记类型,默认为圆圈。
    cmap     仅当c参数为颜色序列的时候使用。
    alpha    透明图设置,取值范围[0,1]。0:透明,1:不透明。
    norm    仅当c为数值序列的时候,通过colors.Normalize将值进行正则化。
    linewidths   散点标记的边界的宽度。
    edgecolors   散点标记的边界的颜色。
    '''
    x = range(len(df['交易额']))
    y = df['交易额']
    
    plt.title('员工和营业额之间的散点图')
    # 设置标题
    
    plt.scatter(x, y,s = 20,c = 'g',marker = '*',
            alpha = 0.8,linewidths = 0.5,edgecolors = ['c', 'r', 'g', 'k', 'y', 'm', 'b'])
    # 散点图参数
    
    plt.xlabel('员工姓名')
    # 设置 x 轴标题
    plt.xticks(rotation = 45)
    # x 轴的字体倾斜
    plt.ylabel('营业额(元)')
    # 设置 y 轴
    plt.show()


    饼图
    pie_params = '''
    参数                  说明
    x        (每一块)的比例,如果sum(x) > 1会使用sum(x)归一化;
    labels   (每一块)饼图外侧显示的说明文字;
    explode  (每一块)离开中心距离;
    startangle 起始绘制角度,默认图是从x轴正方向逆时针画起,如设定 =90 则从y轴正方向画起;
    shadow   在饼图下面画一个阴影。默认值:False,没有阴影;
    labeldistance  label标记的绘制位置,相对于半径的比例,默认值为1.1, 如<1则绘制在饼图内侧;
    autopct  控制饼图内百分比设置,可以使用format字符串或者format function
               '%1.1f'指小数点前后位数(没有用空格补齐);
    pctdistance 类似于 labeldistance,指定 autopct 的位置刻度,默认值为0.6
    radius         控制饼图半径,默认值为1
    counterclock  指定指针方向;布尔值,可选参数,默认为:True,逆时针
    wedgeprops 字典类型,可选参数,默认值:None。参数字典传递给wedge对象用来画一个饼图。
            例如:wedgeprops={'linewidth':3}设置wedge线宽为3。
    textprops   设置标签(labels)和比例文字的格式;字典类型,可选参数,默认值为:None。
            传递给text对象的字典参数。textprops={'fontsize':20,'color':'black'}
    center     浮点类型的列表,可选参数,默认值:(0,0)。图标中心位置。
    frame      布尔类型,可选参数,默认值:False。如果是True,绘制带有表的轴框架。
    rotatelabels  布尔类型,可选参数,默认为:False。如果为True,旋转每个label到指定的角度。
    '''
    x = df.groupby(by = '姓名')['交易额'].sum()
    
    plt.title('员工和营业额之间的饼图')
    # 设置标题
    
    plt.pie(x,labels = x.keys(),explode = [0,0.1,0,0.1,0.3,0.4],startangle = 30,
            shadow = True,labeldistance = 1.3,autopct = '%1.1f',pctdistance = 0.5,
            radius = 0.9,counterclock = True,wedgeprops = {'linewidth':3},
            textprops = {'fontsize':14,'color':'black'},center = (2,2),frame = False,
            rotatelabels = False
            
           )
    # 饼图参数
    
    plt.xlabel('员工姓名')
    # 设置 x 轴标题
    plt.ylabel('营业额所占百分比')
    # 设置 y 轴
    plt.show()


    legend_params = '''
    参数                         说明
    loc = 'upper right'         位于右上角
    bbox_to_anchor = [0.5, 0.5]  外边距 上边 右边
    ncol = 2                     分两列
    borderaxespad = 0.3         图例的内边距
    '''

    2021-01-25

    如果觉得文章不错,可以分享给其他人哟~
  • 相关阅读:
    Collection接口
    数组与集合
    Collection子接口:List接口
    第一篇博客
    在文件每行后边添加固定文本(shell)
    清理缓存
    cent7虚拟机切换root时出现"ABRT has detected ..."问题
    docker部署zabbix并设置自动发现规则
    python的u,r,b分别什么意思?
    docker镜像内没有vim
  • 原文地址:https://www.cnblogs.com/hany-postq473111315/p/14325995.html
Copyright © 2011-2022 走看看