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源码:
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()
文章插图
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()
文章插图
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()
文章插图
- 查询|数据太多容易搞混?掌握这几个Excel小技巧,办公思路更清晰
- 黑莓(BB.US)盘前涨逾32%,将与亚马逊开发智能汽车数据平台|美股异动 | US
- 健身房|乐刻韩伟:产业互联网中只做单环节很难让数据发挥大作用
- V2X|V2X:确保未来道路交通数据交换的安全性
- 短视频平台|大数据佐证,抖音带动三千万就业,视频手机将成生产力工具?
- 权属|从数据悖论到权属确认,数据共享进路所在
- 统计|多久才能换一次手机?统计机构数据有点意外
- 发展|大数据解读世界互联网大会·互联网发展论坛!
- 网购|黑色星期五及网购星期一大数据出炉 全球第三方卖家销售额超48亿美元
- Veeam|Veeam让企业数据拥有“第二次生命”