PHP前端开发

python如何绘制降水图

百变鹏仔 1个月前 (01-23) #Python
文章标签 python

python能快速解决日常工作中的小任务,比如数据展示。python做数据展示,主要用到matplotlib库,使用简单的代码,就可以很方便的绘制折线图、柱状图等。使用java等,可能还需要配合html来进行展示,十分繁琐。

 各种平面图的绘制代码:

'''File Name:   drawDescription: 图形绘制。十分有用,对于工作中实验性的项目,可以快速展示效果。如果使用java,还需要配合前端展示。'''import matplotlib.pyplot as pltimport numpy as np  # 模块取别名# 直方图def draw_hist():    mu = 100    sigma = 20    x = mu + sigma * np.random.randn(20000)  # 样本数量    plt.hist(x, bins=100, color='green', normed=True)  # bins:显示有几个直方,normed是否对数据进行标准化    plt._show()# 条形图def draw_bar():    y = [20, 10, 30, 25, 15]  # Y轴数据    index = np.arange(5)  # X轴数据,也可以是index = [0,5]    plt.bar(left=index, height=y, color='blue', width=0.5)    plt.show()# 折线图def draw_plot():    x = np.linspace(-10, 10, 100)  # -10到10,100个点    y = x ** 3  # x的3次幂    plt.plot(x, y, linestyle='--', color='orange', marker='<p><strong>3D图的绘制代码:</strong></p><pre class="brush:php;toolbar:false">'''File Name:   draw_3dDescription: 3D绘图'''import numpy as npimport matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3D# 3D 绘制def draw_3D():    fig = plt.figure()  # 定义一个窗口    ax = Axes3D(fig)  # 绘制3D坐标    # 设置x、y、z的值    x = np.arange(-4, 4, 0.25)    y = np.arange(-4, 4, 0.25)    x, y = np.meshgrid(x, y)  # x-y 平面的网格    r = np.sqrt(x ** 2 + y ** 2)    z = np.sin(r)  # z值    # 做出一个三维曲面,并将一个 colormap rainbow 填充颜色,之后将三维图像投影到 XY 平面上做一个等高线图    # rstride 和 cstride 分别代表 row 和 column 的跨度。    ax.plot_surface(x, y, z, rstride=1, cstride=1, cmap=plt.get_cmap('rainbow'))    # 添加 XY 平面的等高线    ax.contourf(x, y, z, zdir='z', offset=-2, cmap=plt.get_cmap('rainbow'))    ax.set_zlim(-2, 2)    plt.show()  # 展示# startif __name__ == '__main__':    draw_3D()