我们根据几个简单的例子来学习基本的画图操作,注意这篇博客只适合最基本的操作。
适合人群:期望速成,时间紧迫(明天就要交作业但是还不会画图)等。
导入matplotlib库
import matplotlib.pyplot as plt
在以下的例子中我们都以plt为matplotlib.pyplot的别名
画线
使用
plt.plot(x, y)
传入x,y,通常是两个list
实例
画一个y=x的函数图像
import matplotlib.pyplot as plt
x = []
y = []
for i in range(100):
x.append(i)
y.append(i)
plt.plot(x, y)
plt.show()
注意最后一行要执行plt.show(),否则图像不会显示出来。
效果
换颜色
plt.plot()函数给c或者color这个参数赋予不同的属性,可以写颜色的简称,也可以写全名。
比如
plt.plot(x, y,c='r')
plt.plot(x, y,c='red')
plt.plot(x, y,color='r')
plt.plot(x, y,color='red')
都代表这条线是红色
以下是一些代表颜色的参数值
character | color |
---|---|
'b' | blue |
'g' | green |
'r' | red |
'c' | cyan |
'm' | magenta |
'y' | yellow |
'k' | black |
'w' | white |
实例
画三条线,三条线不同的颜色
import matplotlib.pyplot as plt
x = []
y1 = []
y2 = []
y3 = []
for i in range(100):
x.append(i)
y1.append(i)
y2.append(5*i)
y3.append(10*i)
plt.plot(x, y1,c='r')
plt.plot(x, y2,c='blue')
plt.plot(x, y3,color='green')
plt.show()
加图例
给图像制作图例
plt.plot()中label属性可以给对应的线做图例
例如,我们给三条不同的线标上名字
plt.plot(x, y1,c='r',label='y1')
plt.plot(x, y2,c='blue',label='y2')
plt.plot(x, y3,color='green',label='y3')
注意,最后要加上
plt.legend(loc='best')
这是为了显示图例,这里我们loc传入了‘best’值,让程序自己选择一个不错的位置显示。
以下是几个loc的参数值,通过传入不同的值修改图例显示的位置。
Location String | Location Code |
---|---|
‘best’ | 0 |
‘upper right’ | 1 |
‘upper left’ | 2 |
‘lower left’ | 3 |
‘lower right’ | 4 |
‘right’ | 5 |
‘center left’ | 6 |
‘center right’ | 7 |
‘lower center’ | 8 |
‘upper center’ | 9 |
‘center’ | 10 |
实例
import matplotlib.pyplot as plt
x = []
y1 = []
y2 = []
y3 = []
for i in range(100):
x.append(i)
y1.append(i)
y2.append(5*i)
y3.append(10*i)
plt.plot(x, y1,c='r',label='y1')
plt.plot(x, y2,c='blue',label='y2')
plt.plot(x, y3,color='green',label='y3')
plt.legend(loc='best')
plt.show()
画散点图
和之前画现很类似,但是这里使用的是plt.scatter函数。
实例
import matplotlib.pyplot as plt
import random
x1 = []
y1 = []
x2 = []
y2 = []
for i in range(100):
x1.append(random.randint(0,100))
x2.append(random.randint(0,100))
y1.append(random.randint(0,100)) #随机生成一些点
y2.append(random.randint(0,100))
plt.scatter(x1, y1, c="r")
plt.scatter(x2, y2, c="b")
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/8e141921e8782d72ad9cf7ed4e3999af.png)
修改图像大小
在plt.show()之前加上下面这句
plt.figure(figsize=(a, b))
其中a、b参数分别代表宽度和高度的大小。
这样就可以根据需求调整显示的图像大小了。