Python开发之matplotlib的简单使用(一)


前言:主要介绍了matplotlib的环境配置,开发流程,以及常见的折线图的几种形式。


1.matplotlib的环境配置

1)Win系统安装

切换到cmd窗口下,执行以下命令:

python -m pip install -U pip setuptools
python -m pip install matplotlib

如果安装失败,可以尝试用下面的镜像

python -m pip install -U pip setuptools -i https://pypi.tuna.tsinghua.edu.cn/simple
python -m pip install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple

2)Linux 系统安装

sudo apt-get install python-matplotlib

3)Mac系统安装

sudo python -mpip install matplotlib

2.matplotlib开发流程

  1. 从matplotlib的库中导入pyplot(from matplotlib import pyplot as plt)
  2. 准备x轴、y轴的数据(数据可以是range类型或者list类型)
  3. 设置图片的大小,比如:plt.figure(figsize=(20,8), dpi = 80)
  4. 绘图(比如绘制折线图plt.plot(x, y))
  5. 设置X轴的刻度(plt.xticks)、Y轴的刻度(plt.yticks)
  6. (选择)绘制网格,plt.grid()
  7. (选择)给X轴、Y轴、标题添加描述信息,plt.xlabel、plt.ylabel、plt.title
  8. (选择)添加图例,plt.legend
  9. 保存图片,plt.savefig(".xxxx.png")
  10. 展示,plt.show()

3.折线图案例一

代码:

from matplotlib import pyplot as plt

#设置X轴和Y轴数据
x = range(2, 26, 2) #range类型
y = [15,13,14.5,17,20,25,26,26,27,22,18,15] #list类型

#设置图片大小
plt.figure(figsize=(20,8), dpi = 80)

#绘图
plt.plot(x, y)

#设置x轴的刻度
plt.xticks(range(0,30))
plt.yticks(range(min(y), max(y)+1))

#绘制网格
plt.grid()

#添加描述信息
plt.xlabel("This is X")
plt.ylabel("This is Y")
plt.title("This is title")

#保存
plt.savefig("./t101.png")

#展示图片
plt.show()

输出:
在这里插入图片描述

4.折线图案例二

模拟一个时间段的温度变化
代码:

from matplotlib import pyplot as plt
import random
from matplotlib import font_manager

#设置字体的方式
my_font = font_manager.FontProperties(fname=r"c:\windows\fonts\simsun.ttc")

#设置X轴和Y轴的数据
x = range(0,60)
y = [random.randint(10,35) for i in range(60)]

#设置图片大小
plt.figure(figsize=(20,8),dpi=80)

#绘图
plt.plot(x,y)

#调整x轴的刻度
_xtick_labels = ["10点{}分".format(i) for i in range(60)]
#取步长2,数字和字符串一一对应,数据的长度一样
plt.xticks(list(x)[::2], _xtick_labels[::2], rotation=45,fontproperties=my_font) #rotaion旋转的度数
plt.yticks(range(10,35))


#添加描述信息
plt.xlabel("时间",fontproperties=my_font)
plt.ylabel("温度 单位(℃)",fontproperties=my_font)
plt.title("10点到11点每分钟的气温变化情况",fontproperties=my_font)

#保存
plt.savefig("./t201.png")
plt.show()

输出:
在这里插入图片描述

5.折线图案例三

设置双折线图
代码:

from matplotlib import pyplot as plt
from matplotlib import font_manager

my_font = font_manager.FontProperties(fname=r"c:\windows\fonts\simsun.ttc")

x = range(11,31)
y_1 = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
y_2 = [1,0,3,1,2,2,3,3,2,1 ,2,1,1,1,1,1,1,1,1,1]


#设置图形的大小
plt.figure(figsize=(20, 8), dpi=80)

plt.plot(x, y_1, label = "自己",color = "#CCCCCC")
plt.plot(x, y_2, label = "同桌", color="#DB7093")

#设置x轴刻度
_xtick_lables = ["{}岁".format(i) for i in x]
plt.xticks(x, _xtick_lables,fontproperties = my_font)
plt.yticks(range(0,9))

#绘制网格
plt.grid(alpha=0.5,linestyle=':')

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

#保存
plt.savefig("./t401.png")
#展示
plt.show()

输出:
在这里插入图片描述


结束!

发布了129 篇原创文章 · 获赞 83 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/qq_32306361/article/details/105286761