用Matplotlib画水平柱状图和折线图的个人使用心得与总结

从4月5号到18号研究了两周的matplotlib,算是小有收获。网上关于matplotlib的使用大大小小问题的回答并不是很全面比较零碎,有些还是得靠摸索。这段时间主要研究了水平柱状图和折线图的使用,总结并记录一下。

水平柱状图

# 导入绘图包,分别导入避免出错,尽量不用from pylab import *
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.patches as patches

第一步,一定是定义一个画布

# 绘图窗口尺寸(6英寸,5英寸),分辨率120,背景颜色设置为白色
plt.figure(figsize=(6,5),dpi=120,facecolor='white')
# 可显示中文字,字体为雅黑
plt.rcParams['font.sans-serif'] = ['SimHei']
# 刻度值可以显示负数,避免显示问题
plt.rcParams['axes.unicode_minus'] = False
# 可以调用各种风格,这个风格无边框,不用额外设置,看着干净,用的比较多
# 可以使用plt.style.available获取所有美化样式,选择一个合适的
plt.style.use('fivethirtyeight')
# 如果用自己下载的字体,开头导入FontProperties和os模块的一些函数
from os.path import abspath, sep
from os import getcwd
from matplotlib.font_manager import FontProperties
myFont = FontProperties(fname=getcwd()+sep+'fonts'+sep+'STKAITI.TTF',size=12)

第二步,我自己把水平柱状图分为单柱和多柱。

# 不管多少柱,保持x和y对应的值的数量相同
width = 0.1 # 设置柱状图的宽度
x1 = [1.1,2,3.1,4.6,5] # 5个值
# x2 = [0.85] # 1个值
y1 = [0,1,2,3,4] # 也要5个值
# y2 = [0] # 也要1个值
y_labels = ['xxx','xxx','xxx','xxx','xxx'] # 5个标签对应5个值
idx = np.arange(len(x1))
# idx = np.arange(len(x2))

第三步,画图

# 可设置的参数很多,width,height,align,facecolor,edgecolor,alpha,label,zorder
# 通常align设置为center不用去调idx值对齐;alpha可以调透明度,越小越透明;zorder表示层级
# zorder=2的图像覆盖到zorder=1之上
plt.barh(
		idx,x1,
		width,
		facecolor = 'blue',
		edgecolor = 'white',
		alpha = 0.3,
		zorder = 1,
		label = 'xxx')

第四步,设置辅助显示层的一些参数

  1. title常用参数
    fontsize设置字体大小,默认12,可选参数 [‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’,‘x-large’, ‘xx-large’]
    fontw
  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值