2019年7月15日14:45:27
Python3.6
Matplotlib的一些基础知识
1、创建
2、简单的plt例子
3、绘图样式的修改
4、一次创建多个子图
5、保存图片
6、关于Matplotlib中文乱码这回事
直接上代码操作,可以体验一下,自己根据自己需要修改即可。
关于实际效果的生成,自己实际运行一下就会显示,截图还是有点麻烦的,就不截图了。
建议刚开始读一下官网对这个库的基本介绍。
英文阅读有点吃力的话,使用谷歌浏览器的谷歌翻译插件,网页全部翻译为中文阅读即可。
官网:
https://matplotlib.org/tutorials/introductory/usage.html#sphx-glr-tutorials-introductory-usage-py
主要用来生成柱状图、折线图、散点图、饼状图
# -*- coding: utf-8 -*-
"""
-------------------------------------------------
@File: 4、这是一次创建多个图.py
@Author : hyh
@Ide: Pycharm
@Contact: [email protected]
@Date: 19-7-15 上午11:11
-------------------------------------------------
Description :
-------------------------------------------------
"""
import matplotlib.pyplot as plt
import numpy as np
"""
柱状图:
plt.bar(names, values)
散点图:
plt.scatter(names, values)
折线图:
plt.plot(names, values)
饼状图:
"""
def plt_sub_one():
names = ['group_a', 'group_b', 'group_c']
values = [1, 10, 100]
plt.figure(figsize=(9, 3))
plt.subplot(131)
plt.bar(names, values) # 柱状图
plt.subplot(132)
plt.scatter(names, values) # 散点图
plt.subplot(133)
plt.plot(names, values) # 折线图
plt.suptitle('Categorical Plotting')
plt.show()
"""
这是一个饼状图:
官方样例:https://matplotlib.org/gallery/pie_and_polar_charts/pie_features.html
"""
def ply_pie():
# Pie chart, where the slices will be ordered and plotted counter-clockwise:
labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0) # only "explode" the 2nd slice (i.e. 'Hogs')
fig1, ax1 = plt.subplots()
ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%',
shadow=True, startangle=90)
ax1.axis('equal') # Equal aspect ratio ensures that pie is drawn as a circle.
plt.show()
def f(t):
return np.exp(-t) * np.cos(2 * np.pi * t)
"""
这是一个plt里面好多图
"""
def plt_sub_two():
t1 = np.arange(0.0, 5.0, 0.1)
t2 = np.arange(0.0, 5.0, 0.02)
plt.figure()
plt.subplot(211)
plt.plot(t1, f(t1), 'bo', t2, f(t2), 'k')
plt.subplot(212)
plt.plot(t2, np.cos(2 * np.pi * t2), 'r--')
plt.show()
"""
这个不知道为什么会报错,官网的例子
"""
def plt_sub_three():
plt.figure(1) # the first figure
plt.subplot(211) # the first subplot in the first figure
plt.plot([1, 2, 3])
plt.subplot(212) # the second subplot in the first figure
plt.plot([4, 5, 6])
plt.figure(2) # a second figure
plt.plot([4, 5, 6]) # creates a subplot(111) by default
plt.figure(1) # figure 1 current; subplot(212) still current
plt.subplot(211) # make subplot(211) in figure1 current
plt.title('Easy as 1, 2, 3') # subplot 211 title
if __name__ == '__main__':
plt_sub_one()
ply_pie()
plt_sub_two()
# plt_sub_three()