千家信息网

python怎么绘制分组对比柱状图

发表于:2025-11-10 作者:千家信息网编辑
千家信息网最后更新 2025年11月10日,今天小编给大家分享一下python怎么绘制分组对比柱状图的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们
千家信息网最后更新 2025年11月10日python怎么绘制分组对比柱状图

今天小编给大家分享一下python怎么绘制分组对比柱状图的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

首先放效果图:

 # -*- coding: utf-8 -*-import numpy as np import tensorflow as tffrom matplotlib.path import Pathfrom matplotlib.patches import PathPatchimport matplotlib.pyplot as pltimport matplotlibfrom matplotlib.animation import FuncAnimationimport matplotlib as mplimport datetimeimport timeimport  reimport urllib.requestnp.set_printoptions(suppress=True) mpl.rcParams['font.sans-serif'] = ['SimHei'] #指定默认字体 SimHei为黑体mpl.rcParams['axes.unicode_minus'] = False #用来正常显示负import requestsimport reimport hashlib #测试数据  osm的点线面数据#测试主机 8G 4核 1T机械盘#mysql 5.7.23#postgresql 12#dameng 7#oracle 19c 19.3  #读取效率 点             线           面r = [     [24714,       21748,        19298],     #Oracle          [44127,       45943,        42199],     #GDB          #[0,      0,        0],    #SQLITE         # [0,      0,        0],    #MySQL          [352641,      352739,        304189],    #SQLITE          [213550,      218095,        212749],    #MySQL          [36556,       22172,        12741],     #PostgreSQL          [52749,       46292,        20040],     #dameng          [25111,       12000,        11000],     #ArcGIS_GDB          [10102,       9003,        7003]       #ArcGIS_ORACLE     ] #写入效率w = [     [190,         675,        40],        #Oracle          [15815,       9820,        11892],     #GDB          [94547,       81847,        57235],     #SQLITE          # [0,       0,        0],     #SQLITE         [502,         662,        403],       #MySQL          #[0,         0,        0],       #MySQL          [1631,        1599,        1502],      #PostgreSQL          [2004,        1849,        1524],      #dameng          [10111,       8000,        5600] ,     #ArcGIS_GDB          [1100,       1000,        900]        #ArcGIS_ORACLE    ]      #这是柱图x轴标签ysr = ['Oracle','GDB','SQLITE','MySQL','PostgreSQL','DAMENG','ArcGIS_GDB','ArcGIS_ORACLE']    def DrawGeoDtaabse(rcount, wcount, y):    #第一行 第一列图形   2,1 代表2行1列    ax1 = plt.subplot(2,1,1)    #第二行 第一列图形     ax3 = plt.subplot(2,1,2)    #默认时间格式    plt.sca(ax1)    plt.xlabel("",color = 'r') #X轴标签    plt.ylabel("条/s",color = 'r')  #Y轴标签    #plt.grid(True)   显示格网    #plt.gcf().autofmt_xdate() 显示时间    plt.legend() # 显示图例    plt.title("[读取]效率") #标题     x1 = [1,5,9,13,17,21,25,29] # x轴点效率位置    x2 = [i + 1 for i in x1]    # x轴线效率位置    x3 = [i + 2 for i in x1]    # x轴面效率位置    y1 = [i[0] for i in rcount] # y轴点效率位置    y2 = [i[1] for i in rcount] # y轴线效率位置    y3 = [i[2] for i in rcount] # y轴面效率位置    #占位以免 数据源标签丢失    y0 = ["","","","","","","",""]    plt.bar(x1, y1, alpha=0.7, width=1, color='r',label="点", tick_label=y0)    plt.bar(x3, y3, alpha=0.7, width=1, color='b',label="面", tick_label=y0)    plt.bar(x2, y2, alpha=0.7, width=1, color='g',label="线", tick_label=y)    #至此第一行的读取效率绘制完毕,再重复一下第二行的写效率     plt.sca(ax3)    plt.xlabel("数据源",color = 'r') #X轴标签    plt.ylabel("条/s",color = 'r') #Y轴标签    #plt.grid(True)    plt.legend() # 显示图例    plt.title("[写入]效率") #图标题      y1 = [i[0] for i in wcount]    y2 = [i[1] for i in wcount]    y3 = [i[2] for i in wcount]    y0 = ["","","","","","","",""]    plt.bar(x1, y1, alpha=0.7, width=0.6, color='r',label="点", tick_label=y0)    plt.bar(x3, y3, alpha=0.7, width=0.6, color='b',label="面", tick_label=y0)    plt.bar(x2, y2, alpha=0.7, width=0.6, color='g',label="线", tick_label=y)     plt.legend()    plt.show()  DrawGeoDtaabse(r,w,ysr)

以上就是"python怎么绘制分组对比柱状图"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。

0