Python数据可视化教学(附源码,修改参数即可)

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
以下文章来源于云+社区, 作者:职场亮哥
前言采用数据可视化技术 , 数据不仅一目了然 , 而且更容易被解读 。 同样在数据分析得到结果之后 , 我们还需要用到可视化技术 , 把最终的结果呈现出来 。
【Python数据可视化教学(附源码,修改参数即可)】可视化视图都有哪些?
散点图、折线图、直方图、条形图、箱线图、饼图、热力图等 。
Python数据可视化教学(附源码,修改参数即可)文章插图
折线图python源码:
import matplotlib.pyplot as pltimport matplotlib.font_manager as fmyy=[1,2,3,4,5,6,3,1,7,8]xx=[3,5,4,1,9,3,2,5,6,3]zz=[2,2,4,7,4,8,2,4,5,6]plt.plot(yy,color='r',linewidth=2,linestyle='-',label='Data 1')plt.plot(xx,color='b',linewidth=2,linestyle='--',label='Data 2')plt.legend(loc=3) #loc是调整图例的位置plt.xlabel('X',fontproperties='simhei',fontsize=14) #fontsize字大小 fontproperties是字体plt.ylabel('y轴名称',fontproperties='simhei')plt.title('折线图',fontproperties='simhei')plt.ylim(0,10)plt.show()
Python数据可视化教学(附源码,修改参数即可)文章插图
雷达图python源码:
import matplotlib.pyplot as pltimport numpy as nptheta=np.array([0.25,0.5,0.75,1,1.25,1.5,1.75,2,0.25])r=[75,60,50,70,50,85,45,70,75]plt.polar(theta*np.pi,r,'ro-',lw=2)#theta是角 , np.pi=3.1415926....r是径 。 ‘ro’r是红色 , o是形状 , lw是连线的宽度plt.fill(theta*np.pi,r,facecolor='r',alpha=0.2) #facecolor是填充的颜色 , alpha是透明度plt.ylim(0,100) #定义每圈雷达的值plt.show()
Python数据可视化教学(附源码,修改参数即可)文章插图
Q3
柱形图
python源码:
import numpy as npimport matplotlib.pyplot as pltN=5men=(20,35,30,35,27)wmen=(25,32,34,20,25)menstd=(2,3,4,1,2)womstd=(3,5,2,3,3)ind=np.arange(N)width=0.25p1=plt.bar(ind,men,width,yerr=menstd) #yerr是误差p2=plt.bar(ind,wmen,width,bottom=men,yerr=womstd) #bottom是以???为底开始画柱子plt.ylabel('scores')plt.title('scores by group and gender')plt.xticks(ind,('1','2','3','4','5'))plt.yticks(np.arange(0,81,10))plt.legend((p1[0],p2[0]),('nan','nv')) #legend是图例plt.show()
Python数据可视化教学(附源码,修改参数即可)文章插图
Q4
三维图
python源码:
from matplotlib import pyplot as pltfrom mpl_toolkits.mplot3d import Axes3Dimport numpy as np#定义坐标轴fig4 = plt.figure()ax4 = plt.axes(projection='3d')#生成三维数据xx = np.arange(-5,5,0.1)yy = np.arange(-5,5,0.1)X, Y = np.meshgrid(xx, yy)Z = np.sin(np.sqrt(X**2+Y**2))#作图ax4.plot_surface(X,Y,Z,alpha=0.3,cmap='winter')#生成表面 ,alpha 用于控制透明度ax4.contour(X,Y,Z,zdir='z', offset=-3,cmap="rainbow")#生成z方向投影 , 投到x-y平面ax4.contour(X,Y,Z,zdir='x', offset=-6,cmap="rainbow")#生成x方向投影 , 投到y-z平面ax4.contour(X,Y,Z,zdir='y', offset=6,cmap="rainbow")#生成y方向投影 , 投到x-z平面#ax4.contourf(X,Y,Z,zdir='y', offset=6,cmap="rainbow")#生成y方向投影填充 , 投到x-z平面 , contourf()函数#设定显示范围ax4.set_xlabel('X')ax4.set_xlim(-6, 4)#拉开坐标轴范围显示投影ax4.set_ylabel('Y')ax4.set_ylim(-4, 6)ax4.set_zlabel('Z')ax4.set_zlim(-3, 3)plt.show()
Python数据可视化教学(附源码,修改参数即可)文章插图