天天看点

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

数据可视化是数据分析的最后一步,只有完成这一步才能把数据的信息清晰明了的传递出来,这一节我们将使用python将最简单的2D图表制作出来。

第三节 数据可视化之Matplotlib 初识(上)

目录

一. Matplotlib简介

二. 绘制折线图

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

➡ 一.Matplotlib简介

Matplotlib 是 Python 中常用的 2D 绘图库,它能轻松地将数据进行可视化,作出精美的图表。Matplotlib 这个模块很庞大,最常用的是其中一个子模块——pyplot,通常这样导入它:

import matplotlib.pyplot as plt
           

导入之后就可以利用Matplotlib的pyplot子模块来进行画图了,我们先来画一个三角函数的函数图像看一下效果:

(小贴士:可利用Anaconda进行编程做图,没有安装的小朋友可以关注公众号回复python获取安装包哦)

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

我们来看一下每一行代码的作用:

  1. 因为需要用到数组,所以我们需要import numpy, 不了解numpy的同学可以看一下前两节的内容~
  2. x = np.arange(0, 2 * np.pi, 0.1),这也是前两节所学的内容,目的是导入数组,np.pi 就是 π 的值。这行代码生成的是0到 2π 的数组,步长是 0.1。如果不明白我们把x的值输出一下看一下:
    anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...
  3. 步长为0.1是为了让每个点的间隔小一点,点的数量多一些,这样画出的图像更加接近真实情况,也更加的平滑。
  4.  y = np.sin(x)。np.sin() 方法是 numpy 中计算正弦函数的方法,我们将 x 的值传进去就得到对应的正弦值。
  5. 有了 x 和 y 的值之后,将其分别传入 plt.plot() 方法,pyplot 会将其转换成对应的坐标。
  6. 将这些坐标连成线就得到了函数的图像,最后调用 plt.show() 方法就能将图像显示出来了。

上面的例子是画了一个函数图像,如果我们要同时画两个函数图像呢?

很简单,我们只需要输入两个因变量y的表达式,重复代码即可:

下面的演示是同时画出sin(x)函数和cos(x)函数

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

代码里面的plt.plot(x, y1, x, y2)也可以一个一个写出来:

plt.plot(x, y1)plt.plot(x, y2)
           

其实对于每一对 x 和 y,还有一个可选的格式化参数,用来指定线条的颜色、点标记和线条的类型。

x = np.arange(0, 2 * np.pi, 0.1)y1 = np.sin(x)y2 = np.cos(x)plt.plot(x, y1, 'ro--')  # 正弦函数图像plt.plot(x, y2, 'b*-.')  # 余弦函数图像# 等价于 plt.plot(x, y1, 'ro--', x, y2, 'b*-.')plt.show()
           

生成的图下如下:

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

图像的样子是由格式化参数决定的,例如正弦函数的格式化参数'ro--',r代表红色(red),o代表圆点标记,--代表着虚线。所以'ro--'代表线条为红色虚线、坐标点标记为圆点。

下图列出了常用格式化参数的含义:

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

➡ 二. 绘制折线图

其实学完了前面的内容就已经掌握了做图的基本画法了,只不过要再学习几个python语句罢了

我们还是先来看例子

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

上面是某商品一周的销量走势。x 轴传入时间,y 轴传入对应的销量,应该不难理解。因为图中有中文,所以需要通过 plt.rcParams['font.family'] = ['arial unicode ms'] 来设置中文字体,否则中文将会乱码。

arial unicode ms是Anaconda 环境里面安装的中文字体,其他环境不一定适用哦~可以通过如下代码来查看所使用环境安装的字体

import matplotlib.font_manager as fmfor font in fm.fontManager.ttflist:  print(font.name)
           

画出多条曲线跟前面讲的同理,只需:

plt.plot(x,y1)plt.plot(x,y2)...
           

另外介绍一下加图例的方法,在调用 plt.plot() 方法时传入 label 参数,接着调用 plt.legend() 方法显示图例即可。

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

这样,我们就能一眼看出每条线所对应的商品。我们还可以看到,图例被放在了图表的左上方,图例位置其实是可以设置的,不设置的情况下 matplotlib 会帮你自动找一个合适的位置放置。

如果想自行选择图例位置的话可以通过 

plt.legend()

 方法的 

loc

 参数实现,

loc

 参数共有如下 11 种方式可供选择:

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

如果我们想将图例放到右下角就可以这么写:

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

到这里就结束了吗?不,还没有!我们还可以通过 plt.xlabel() 和 plt.ylabel() 方法来设置 x 轴和 y 轴的标签,还能通过 plt.title() 给图表设置标题。我们来看一下具体用法:

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...

下一节将继续介绍柱状图和饼图的绘制,敬请期待~

?

长按关注公众号

欢迎留言交流

anaconda matplotlib 输出动画_Python数据分析第三节 数据可视化之Matplotlib 初识(上)...