首先测试下matplotlib的版本,如果显示找不到指定模块则要重新安装,如果直接使用库,会报错没有相关模块
模块版本测试代码:
import matplotlib print(matplotlib.__version__)
运行结果:如果出现以下问题则根据以下情况进行安装操作
根据以下情况重新安装后,重新打开pycharm或其他编辑软件重新输入测试代码,直至测试到版本则表示安装成功
情况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
import matplotlib.pyplot as plt x=[1,2,3] y=[2,4,6] plt.plot(x,y,color='red',linewidth=3,linestyle='--') plt.show()
运行结果:
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()
运行结果:
import matplotlib.pyplot as plt #绘制柱形图 x2=[1,2,3,4,5] y2=[5,4,3,2,1] plt.bar(x2,y2) plt.show()
运行结果:
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()#显示图片
运行结果:
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()
运行结果:
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#解决负号显示为方块的问题