zoukankan      html  css  js  c++  java
  • Matplotlib(绘图和可视化)

    1、简介

      Matplotlib是一个强大的Python绘图和数据可视化的工具包。数据可视化也是我们数据分析的最重要的工作之一,可以帮助我们完成很多操作,完成数据分析的最终结果就是做一个可交互的数据可视化。

      安装方式:pip install matplotlib

      引用方法:import matplotlib.pyplot as plt

    2.plot函数(折线图)

    import numpy as np 
    import pandas as pd 
    import matplotlib.pyplot as plt
    
    plt.rcParams['font.sans-serif']= ['SimHei']   # 仅限于window系统,加入这两句,可解决加入中文
    plt.rcParams['axes.unicode_minus'] = False
    
    x = [2,9,5,10]
    y = [1,2,3,4]
    
    plt. figure (figsize=(10,6))   # 设置画布大小
    
    plt.title('title标题', fontsize=20, color='red')  # 标题的大小和颜色
    plt.xlabel('',fontsize=20)   # 设置x的值
    plt.ylabel('',fontsize=20)     # 设置y的值
    
    
    plt.plot(x, y, marker='o', linestyle='--')  # 画图  ,marker='o'转折点处显示圈
    # linestyle 表示虚线
    plt.show() # 显示画

    3.bar函数(柱状图)

    df = pd.read_csv('./douban_movie.csv')  # 把Excel里面的数据导入进来
    df.head()  # 查看前五条数据
    
    res = df.groupby('产地').size().sort_values(ascending=False)  # 根据 ‘产地’ 将电影划分,ort_index()安装索引排序,sort_values()安装值进行排序
    res
    
    x = res.index
    y = res.values
    
    plt. figure (figsize=(20,6))   # 设置画布大小
    plt.title('每个国家或者地区的电影数量', fontsize=20)  # 标题的大小和颜色
    plt.xticks(rotation=90 ,fontsize=20, color='red')    # rotation=90 翻转90度
    plt.xlabel('产地',fontsize=20)
    
    plt.yticks(fontsize=20)
    plt.ylabel('数量',fontsize=20)
    
    for a,b in zip(x,y):
        plt.text(a, b+150 ,b, horizontalalignment='center',fontsize=15)
        
    plt.bar(x,y)
    plt.show()

     4.pie函数(饼图)

    df.head()
    df_res = df['时长']
    df_res
    
    res = pd.cut(df_res,[0, 60, 90, 120,140,1000])  # df_res是待分割的源数据 [0, 60, 90, 120,140,1000] 是区间,左开右闭
    res
    
    res = res.value_counts()
    res
    
    x = res.index
    y = res.values
    plt.title('电影时长分布图',fontsize=20)
    
    patch, l_text, p_text = plt.pie(y, labels = x, autopct='%.2f%%')
    
    for p in p_text:
        p.set_size(12)
        p.set_color('white')
        
    for l in l_text:
        p.set_size(13)
        p.set_color('red')
    
    plt.pie(y)
    plt.show()

    5、保存图表到文件

      常用格式:plt.savafig('文件名.拓展名')

      文件类型是通过文件扩展名推断出来的。因此,如果你使用的是.pdf,就会得到一个PDF文件。

    plt.savefig('123.pdf')

      savefig并非一定要写入磁盘,也可以写入任何文件型的对象,比如BytesIO:

    from io import BytesIO
    buffer = BytesIO()
    plt.savefig(buffer)
    plot_data = buffer.getvalue()
    
    
    参数 说明
    fname 含有文件路径的字符串或者Python的文件型对象。
    dpi 图像分辨率,默认为100
    format 显示设置文件格式("png","jpg","pdf","svg","ps",...)
    facecolor 背景色,默认为"W"(白色)
    bbox_inches 图表需要保存的部分。设置为”tight“,则尝试剪除图表周围空白部分
  • 相关阅读:
    java 线程 Lock 锁使用Condition实现线程的等待(await)与通知(signal)
    A计划(三维dfs)
    最少拦截系统(线性dp)
    疯狂的采药(完全背包)
    Modular Inverse (拓展欧几里得求逆元)
    斐波那契数列的3种求法及几种素数筛法
    Magic Odd Square (思维+构造)
    Marlin (思维)
    qdu_组队训练(ABCFIJK)
    2018蓝桥编程题6-9+ 50%的10
  • 原文地址:https://www.cnblogs.com/blue-tea/p/11985349.html
Copyright © 2011-2022 走看看