基于Matplotlib包实现可视化①——折线图绘制

Matplotlib 是一个用于创建静态、动画、 和交互式可视化的第三方库,也是我们在借助Python进行数据可视化时经常使用到的库,具有较强的可视化能力。

为让大家有一个更为直观的认识,这里我随机从其官方网页中摘取了几张图片。

按照惯例,我们在这里给出Matplotlib的官方网址(https://matplotlib.org),大家也可以根据其中的示例、资源和参考文档进行自学。

首先,在使用前要确保机器已完成了Matplotlib的安装。

此外,Matplotlib通常也与NumPy、Scipy以及Pandas等数据分析库配合使用。

1.库的导入

采用惯用的import方法,完成导入

import matplotlib

Pyplot 是 Matplotlib 的子库,也是进行绘图时常用的绘图模块,这里我们将其import进来

import matplotlib.pyplot as plt

2.绘制

这里我们编撰几组数据进行展示

#导入from matplotlib import pyplot as plt#数据x = ["2014","2016","2018","2020","2022","2024","2026","2028","2030","2032"]y = [15,13,14,17,20,25,26,26,27,22]#绘制图形plt.plot(x,y)#显示图形plt.show()

结果如下:

至此,我们便简单地完成了折线图的绘制。但是,这个结果显然难以满足我们的实际需要,下面就需要作进一步的美化处理。

3.美化

1.设置画布大小及清晰度

这就需要对图片的大小及清晰度进行设置,代码如下:

#设置大小清晰度fig = plt.figure(figsize=(20,10),dpi=300)

这里,对涉及到的参数做一简要说明:通过figsize参数传入一个元组(width, height),设置图像的大小;通过dpi传入一个整数值,设置图像的清晰度。

2.将图片保存在本地

在示例中,我们选择将生成的图片进行展示,而未将结果导出,我们又不能通过截图将其保存,这就需要我们使用保存命令,代码如下:

plt.savefig('e:/折线图.png')#这里我选择将其输出到E盘目录下,并命名为折线图

3.添加格网

有时,我们需要为图表添加网格,以更好匹配数值信息,代码如下:

#设置格网plt.grid()

4.设置标题

标题也是图表中十分重要的要素,代码如下:

#设置标题plt.title("样例折线图", fontsize = 20,loc = "center")

同样,这里也可以通过一些其他参数完成字体大小、位置的设置

5.设置折线样式

折线图的灵魂自然是折线,折线的样式也是我们关注的焦点。

这里呢,就涉及的参数较多了,我们一一进行介绍。

①线型

线型用参数linestyle定义,简写为ls

线型缩写注释
solid-实线
dotted:点虚线
dashed--破折线
dashdot-.点划线
Noe"或者' '不画线

②颜色

颜色用参数color定义,简写为c

常用颜色

颜色注释
r红色
g绿色
b蓝色
c青色
y黄色
k黑色
w白色

当然,也可以用十六进制颜色进行定义。

③线宽

线宽可以用linewidth参数定义,简写为lw

④形状

形状标记用marker参数进行设置,以下为常用形状(摘自菜鸟文档)

此外,我们还可以用markersize参数来设置形状的大小,简写为ms

有了上述知识储备,我们就可以自由地画线喽!

#设置折线样式plt.plot(x,y1,lw=1,c='red',marker='o',ms=4,label='对象1')plt.plot(x,y2,lw=1,c='blue',marker='s',ms=4,label='对象2')​

6.添加图例

#添加图例plt.legend(loc="upper left")

这里还要说明一下:这里的loc参数主要用于设置插入图例的位置,这里选择左上,主要有以下类型"center", "right","left","upper left","upper right","lower left","lower right","center left"和"center right"等等,可以根据实际情况加以调整,以使其美观。

7.设置轴标签

用xlabel和ylabel来设置

#设置轴标签plt.xlabel('年份',fontsize=13)plt.ylabel('指数',fontsize=13)

8.解决中文字体无法正常显示的问题

由于matplotlib默认使用的字体中不包含中文字符,在绘图时可能会出现中文字体无法显示的现象,这里有一种方法可供参考

plt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus'] = False

如果安装matplotlib路径下有对应字体文件,可以通过这种方式进行设置。

至此,本次分享就告一段落了。而事实上,折线图的绘制并不复杂,属于相对基础的内容,后面也会陆续更新其他图表的绘制,敬请各位关注。另外,如果大家有任何建议、意见和想法,欢迎在评论区留言讨论。

  • 22
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

角砾岩队长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值