目录
  • 一、Matplotlib 绘图
    • 简单示例
  • 二、折线图绘制

    一、Matplotlib 绘图

    在数据分析中,数据可视化也非常重要,通过直观的展示过程、结果数据,可以帮助我们清晰的理解数据,进而更好的进行分析。接下来就说一下Python数据分析中的数据可视化工具 Matplotlib 库。

    Matplotlib 是一个非常强大的Python 2D绘图库,使用它,我们可以通过图表的形式更直观的展现数据,实现数据可视化,使用起来也非常方便,而且支持绘制折线图、柱状图、饼图、直方图、散点图等。

    可以使用以下命令进行安装:

    pip install matplotlib
    # 或者
    conda install matplotlib

    简单示例

    绘制y=2x+1方程图:

    import matplotlib.pyplot as plt
    
    # 创建figure对象(绘画对象)
    plt.figure(figsize=(4, 6))
    
    # 绘制图像
    x = [1, 2, 3, 4]
    y = [2*i+1 for i in x]
    plt.plot(x, y)
    
    # 显示图像
    plt.show()

    结果如下:

    Python数据分析之 Matplotlib 折线图绘制

    其中:

    • pyplot 是 Matplotlib 的子库,该子库提供了绘图的接口及函数,可以快速地进行图表的绘制。
    • plt.figure(figsize=(4, 6))表示创建一个绘图对象,如果没创建直接调用plot函数会自动创建一个绘图对象,语法格式如下:
    plt.figure(num=None, figsize=None, dpi=None, ······)

    常用的参数说明如下:

    • num:表示图形编号,可以是int或string类型,默认为None,不传递则创建新图形,并且图形编号将递增;传递了会返回该编号对应图形的引用。
    • figsize:表示画布的宽度和高度,接收一个整数元组
    • dpi:表示绘图对象的分辨率······
      • plt.plot()函数表示在当前绘图对象中进行图表的绘制,x和y分别表示x、y轴的数据。
      • plt.show()表示显示图像,显示后释放figure对象资源。

    二、折线图绘制

    折线图是一种将数据点按照顺序连起来的图形,可以体现变量y随变量x的变化情况。Matplotlib 提供了plot()函数绘制折线图,其语法格式如下:

    plt.plot(*args, **kwargs)

    常用参数及说明如下:

    • x、y:分别表示x轴和y轴对应的数据,接收列表类型参数
    • color:表示折线的颜色
    • marker:表示折线上点的类型,有“.”、“o”、“v”等等类型
    • linestyle:表示折线的类型,默认为“-”,表示实线,设置为“–”表示长虚线,设置为“-.”表示点线,设置为“:”表示点虚线
    • linewidth:表示折线的粗细
    • alpha:表示点的透明度,接收0~1之间的小数

    例如,绘制某地区周一到周日平均温度变化折线图:

    import matplotlib.pyplot as plt
    plt.figure(figsize=(10, 8))
    # 周一到周日平均温度数据
    plt.plot([1,2,3,4,5,6,7], [12,11,11,13,12,10,10])
    plt.show()

    结果输出如下:

    Python数据分析之 Matplotlib 折线图绘制

    但是可以看出,图表并不是很好看,我们可以给图表添加一些标签和图例,让图表更加清晰好看,

    具体方法如下:

    • plt.title():指定当前图表的标题,包括名称、位置、颜色、字体大小等
    • plt.xlabel():指定当前图表x轴的名称、位置、颜色、字体大小等
    • plt.ylabel():指定当前图表y轴的名称、位置、颜色、字体大小等
    • plt.xlim():指定当前图表x轴的范围
    • plt.ylim():指定当前图表y轴的范围
    • plt.xticks():指定当前图表x轴刻度
    • plt.yticks():指定当前图表y轴刻度
    • ····
    import matplotlib.pyplot as plt
    # 设置支持中文
    plt.rcParams['font.family'] = ['SimHei']
    plt.figure(figsize=(10, 8))
    plt.plot([1,2,3,4,5,6,7], [12,11,11,13,12,10,10], linestyle="-", marker=".")
    plt.xlabel("时间")
    plt.ylabel("温度")
    plt.yticks([i for i in range(20)][::5])
    plt.show()

    结果输出如下:

    Python数据分析之 Matplotlib 折线图绘制

    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。