Python数据可视化教学(附源码,修改参数即可)
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
以下文章来源于云+社区 ,作者:职场亮哥
前言
采用数据可视化技术,数据不仅一目了然,而且更容易被解读。同样在数据分析得到结果之后,我们还需要用到可视化技术,把最终的结果呈现出来。
可视化视图都有哪些?
散点图、折线图、直方图、条形图、箱线图、饼图、热力图等。
折线图
python源码:
import matplotlib.pyplot as pltimport matplotlib.font_manager as fm
yy=[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 np
theta=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 plt
N=5
men=(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.25
p1=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 Axes3D
import 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数据可视化教学(附源码,修改参数即可) 的全部内容, 来源链接: utcz.com/z/530146.html