首先测试下matplotlib的版本,如果显示找不到指定模块则要重新安装,如果直接使用库,会报错没有相关模块
模块版本测试代码:
import matplotlib
print(matplotlib.__version__)
运行结果:如果出现以下问题则根据以下情况进行安装操作
根据以下情况重新安装后,重新打开pycharm或其他编辑软件重新输入测试代码,直至测试到版本则表示安装成功
matplotlib库的安装:
情况1:如果是anaconda安装的python,但是库用不了,则进入终端输入指令:
Windows>>cmd>>pip install matplotlib --upgrade
情况2:如果是其他情况,则直接pip安装,进入终端输入指令:
Windows>>cmd>>pip install matplotlib
情况3:如果直接安装不行,则卸载后再安装,此时可能是版本冲突等问题,进入终端输入指令:
Windows>>cmd>>输入升级指令:pip uninstall matplotlib>>pip install matplotlib
代码练习1:方法1——列表引入变量
import matplotlib.pyplot as plt
x=[1,2,3]
y=[2,4,6]
plt.plot(x,y,color='red',linewidth=3,linestyle='--')
plt.show()
运行结果:
代码练习2:方法2——数组引入变量
import matplotlib.pyplot as plt
import numpy as np
#数组运算
#第一条线:y=x*2
x1=np.array([1,2,3])
y1=x1*2
plt.plot(x1,y1,color='orange',linewidth=3,linestyle='--')
#第二条线:y=x+1
y2=x1+1
plt.plot(x1,y2)#使用默认参数
plt.show()
运行结果:
代码练习3:绘制柱形图
import matplotlib.pyplot as plt
#绘制柱形图
x2=[1,2,3,4,5]
y2=[5,4,3,2,1]
plt.bar(x2,y2)
plt.show()
运行结果:
代码练习4:添加文字说明
import matplotlib.pyplot as plt
#列表引入变量
x=[1,2,3]
y=[2,4,6]
plt.plot(x,y,color='red',linewidth=3,linestyle='--')#输出x,y,颜色为红,线宽为3,线型为'——'
plt.title('Title')#添加标题
plt.xlabel('x')#添加X轴标签
plt.ylabel('y')#添加Y轴标签
plt.show()#显示图片
运行结果:
代码练习5:添加图例
import matplotlib.pyplot as plt
import numpy as np
#数组运算
#第一条线:y=x*2
x1=np.array([1,2,3])
y1=x1*2
plt.plot(x1,y1,color='orange',linewidth=3,linestyle='--',label='y=x*2')#输出x,y,颜色为红,线宽为3,线型为'——',标签为'y=x*2'
#第二条线:y=x+1
y2=x1+1
plt.plot(x1,y2,label='y=x+1')#使用默认参数,标签为'y=x+1'
plt.legend(loc='upper left')#设置图例位置为左上角
plt.show()
运行结果:
代码练习6:设置双坐标轴
import matplotlib.pyplot as plt
import numpy as np
#设置双坐标轴
#第一条线:设置label为‘y=x’
x3=np.array([10,20,30])
y4=x3
plt.plot(x3,y4,color='pink',linestyle='--',label='y=x')
plt.legend(loc='upper left')
plt.twinx()
#第二条线:label为‘y=x^2’
y5=x3*x3
plt.plot(x3,y5,label='y=x^2')
plt.legend(loc='upper right')
plt.show()
运行结果:
补充:调整图表大小,图表有中文需用加入以下代码(用matplotlib画图,默认不支持显示中文)
plt.rcParams['figure.figsize']=(8,6)#设置图表大小 plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签,SimHei:黑体,Microsoft Yahei:微软雅黑,SimSun:宋体,NSimsun:新宋体,FangSong仿宋,KaiTi:楷体,MingLiU:细明体,PMingLiU:新细明体 plt.rcParams['axes.unicode_minus']=False#解决负号显示为方块的问题