python3  画柱状图bar matplotlib.pyplot as plt

解决中文问题:https://download.csdn.net/download/github_33934628/9967497

1.简单柱状图

#!/bin/usr/python3
# -*- coding: utf-8 -*-
# 简单柱状图
#文件名:baseHistogram.py

import matplotlib
import matplotlib.pyplot as plt
import time

#中文问题
zhfont1 = matplotlib.font_manager.FontProperties(fname='/usr/share/matplotlib/mpl-data/fonts/ttf/heiti.ttf')

name_list = ['[0~5)','[5~10)','[10~15)','[15~20)','[20~25)','[25~30)','[30~35)','[35~40)','[45~50]']
num_list = [5,5.5,20,50.5,100,105,200,100,50]

rect=plt.bar(range(len(num_list)), num_list,tick_label='')

plt.legend((rect,),("不变姿态",),prop=zhfont1)

name_num=0
for name_num in range(len(name_list)):
    plt.text(name_num-0.2,-10,name_list[name_num],rotation=25)

plt.text(9,-2,"单位:cm",fontproperties=zhfont1)
plt.ylabel("成功率",fontproperties=zhfont1)

# plt.title("Invariable attitude robot reachability")
plt.title("不变姿态成功率",fontproperties=zhfont1)

# plt.show() #显示图片

log=time.strftime("%Y-%m-%d-%H_%M_%S",time.localtime(time.time())) #以当前时间为名保存图片
plt.savefig("./%s_base.jpg"%log)

结果1:

这里写图片描述

2.并列柱状图

#!/bin/usr/python3
# -*- coding: utf-8 -*-
# 并列柱状图
#文件名:parallelHistogram.py

import matplotlib
import matplotlib.pyplot as plt
import time

#中文问题
zhfont1 = matplotlib.font_manager.FontProperties(fname='/usr/share/matplotlib/mpl-data/fonts/ttf/heiti.ttf')

name_list = ['[0~5)','[5~10)','[10~15)','[15~20)','[20~25)','[25~30)','[30~35)','[35~40)','[45~50]']
num_list = [5,5.5,20,50.5,100,105,200,100,50]
num_list1 = [4,10,10,70.5,95,10,300,10,5]

x =list(range(len(num_list)))
total_width, n = 0.8, 2
width = total_width / n

rect=plt.bar(x, num_list,tick_label='',width=width,label='unchanged',fc='y')
for i in range(len(x)):
    x[i]+=width
rect1=plt.bar(x, num_list1,tick_label='',width=width,label='changed',fc='g')
plt.legend()

name_num=0
for name_num in range(len(name_list)):
    plt.text(name_num-0.2,-10,name_list[name_num],rotation=25)

plt.text(9,-2,"单位:cm",fontproperties=zhfont1)
plt.ylabel("成功率",fontproperties=zhfont1)

# plt.title("Invariable attitude robot reachability")
plt.title("变姿态成功率vs不变姿态成功率",fontproperties=zhfont1)

# plt.show() #显示图片

log=time.strftime("%Y-%m-%d-%H_%M_%S",time.localtime(time.time())) #以当前时间为名保存图片
plt.savefig("./%s_parallel.jpg"%log)

结果2:

这里写图片描述

猜你喜欢

转载自blog.csdn.net/u011280600/article/details/81355941