python-matplotlib学习

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-matplotlib学习相关的知识,希望对你有一定的参考价值。

1 import matplotlib.pyplot as plt
2 import numpy as np
3 
4 x=np.linspace(-1,1,50)
5 y=2*x+1
6 plt.plot(x,y)
7 plt.show()

技术分享

2:绘制y=x*x 的图像

1 import matplotlib.pyplot as plt
2 import numpy as np
3 
4 x=np.linspace(-1,1,50)
5 #y=2*x+1
6 y=x**2
7 plt.plot(x,y)
8 plt.show()

技术分享

3:figure 的认识

 1 import matplotlib.pyplot as plt
 2 import numpy as np
 3 
 4 x=np.linspace(-1,1,50)
 5 y1=2*x+1
 6 y2=x**2
 7 
 8 plt.figure("第一个figure")
 9 plt.plot(x,y1)
10 
11 plt.figure() #看看默认的名字
12 plt.plot(x,y2)
13 plt.plot(x,y1,color=red,linewidth=2.0,linestyle=--) # 绘制两条线 颜色为红色,宽度为2,虚线
14 
15 
16 plt.show()

技术分享

技术分享
 1 import matplotlib.pyplot as plt
 2 import numpy as np
 3 
 4 x=np.linspace(-3,3,50)
 5 y1=2*x+1
 6 y2=x**2
 7 
 8 plt.figure() #看看默认的名字
 9 plt.plot(x,y2)
10 plt.plot(x,y1,color=red,linewidth=2.0,linestyle=--) # 绘制两条线 颜色为红色,宽度为2,虚线
11 plt.xlim(-1,2) #x轴取值范围
12 plt.ylim(-2,3) #y轴取值范围
13 
14 plt.xlabel("x轴")
15 plt.ylabel("y轴") #描述
16 
17 plt.show()
View Code

技术分享

中文乱码出现解决方法

找到matplot安装路径下的matplotlibrc 文件用文本编辑工具打开并修改 
#font.family         : sans-serif 去掉 #

#font.sans-serif 这一行 去点 # 并添加微软雅黑字体 

技术分享

这是网上查到的解决办法我试了一下然并卵啊。

不了了之了暂时,等找到更好的方法后再说吧

替换坐标轴度量值

 1 import matplotlib.pyplot as plt
 2 import numpy as np
 3 
 4 x=np.linspace(-3,3,50)
 5 y1=2*x+1
 6 y2=x**2
 7 
 8 plt.figure("figure能不能用中文") #看看默认的名字
 9 plt.plot(x,y2)
10 plt.plot(x,y1,color=red,linewidth=2.0,linestyle=--) # 绘制两条线 颜色为红色,宽度为2,虚线
11 
12 plt.xlim(-1,2) #x轴取值范围
13 plt.ylim(-2,3) #y轴取值范围
14 
15 
16 plt.xlabel("I am x")
17 plt.ylabel("I am y") #描述
18 #plt.legend(prop=font)
19 
20 new_ticks=np.linspace(-1,2,5)
21 print(new_ticks)
22 plt.xticks(new_ticks)
23 plt.yticks([-2,-1.8,-1,1.22,3],[r"$really\\ bad$",r"$bad$","$normal$","$good$","$really\\ good$"])
24 
25 plt.show()

技术分享

技术分享
 1 import matplotlib.pyplot as plt
 2 import numpy as np
 3 
 4 x=np.linspace(-3,3,50)
 5 y1=2*x+1
 6 y2=x**2
 7 
 8 plt.figure("figure能不能用中文") #看看默认的名字
 9 plt.plot(x,y2)
10 plt.plot(x,y1,color=red,linewidth=2.0,linestyle=--) # 绘制两条线 颜色为红色,宽度为2,虚线
11 
12 plt.xlim(-1,2) #x轴取值范围
13 plt.ylim(-2,3) #y轴取值范围
14 
15 
16 plt.xlabel("I am x")
17 plt.ylabel("I am y") #描述
18 #plt.legend(prop=font)
19 
20 new_ticks=np.linspace(-1,2,5)
21 print(new_ticks)
22 plt.xticks(new_ticks)
23 plt.yticks([-2,-1.8,-1,1.22,3],[r"$really\\ bad$",r"$bad$","$normal$","$good$","$really\\ good$"])
24 
25 #gca =‘get current axis‘
26 
27 ax=plt.gca()
28 ax.spines[right].set_color(none) #右侧轴隐藏
29 ax.spines[top].set_color(none) #上侧轴隐藏
30 ax.xaxis.set_ticks_position(bottom)
31 ax.yaxis.set_ticks_position(left)
32 ax.spines["bottom"].set_position((data,0)) # 设置x轴位置
33 ax.spines["left"].set_position((data,0))
34 
35 plt.show()
View Code

技术分享

技术分享
 1 import matplotlib.pyplot as plt
 2 import numpy as np
 3 
 4 x=np.linspace(-5,5,100)
 5 y1=2*x+1
 6 y2=x**2
 7 
 8 plt.xlim(-5,5) #x轴取值范围
 9 plt.ylim(-5,25) #y轴取值范围
10 plt.xlabel("I am x")
11 plt.ylabel("I am y") #描述
12 
13 l1,=plt.plot(x,y1,label="y=2x+1")
14 l2,=plt.plot(x,y2,color=red,linewidth=1.0,linestyle=--,label="y=x*x")# 逗号为必须
15 plt.legend(handles=[l1,l2,],labels=["aaa","bbb"],loc=best)
16 
17 plt.show()
View Code

技术分享

技术分享

 


以上是关于python-matplotlib学习的主要内容,如果未能解决你的问题,请参考以下文章

python-matplotlib

Python-Matplotlib可视化——精通更多实用图形的绘制

Python-Matplotlib可视化——多方面自定义统计图绘制

Python-Matplotlib做gmx_MMPBSA计算结果展示

Python-matplotlib 画直方图hist

Python-Matplotlib 18 注释