matplotlib 条形图
一、特点
离散数据,数据之间没有直接的关系
二、分类
1、垂直条形图
bar(x, height, width=0.8)
# x 为x轴
# height 为y轴
# width 为 条形图的宽度
例子
from matplotlib import pyplot as plt
from matplotlib import font_manager
a = ["战狼2", "熟读与激情8", "功夫瑜伽", "西游伏妖篇", "变形金刚5:\n 最后的骑士", "摔跤吧!爸爸", "加勒比海盗5:\n 死无对证",
"金刚: 骷髅岛", "极限特工:\n 终极回归", "生化危机6:\n 终章", "乘风波浪", "神偷奶爸3", "智取威虎山", "大闹天竺", "金刚狼3:\n 殊死一战",
"蜘蛛侠:\n 英雄归来", "悟空转", "银河护卫队2", "情圣", "新木乃伊"] b = [56.01, 26.94, 17.53, 16.49, 15.45, 12.96, 11.8, 11.61, 11.28, 11.12, 10.49, 10.3, 8.75, 7.55, 7.32, 6.99, 6.88,
6.86, 6.58, 6.23] # 设置中文显示
my_font = font_manager.FontProperties(fname="C:\Windows\Fonts\msjh.ttc")
# 设置图形大小
plt.figure(figsize=(20, 10), dpi=80) # 绘图
x = range(len(a))
plt.bar(x, b, width=0.4, color="#FF00FF")
# 设置x轴刻度和label
plt.xticks(x, a, fontproperties=my_font, rotation=45)
plt.grid(alpha=0.4)
# 添加描述
plt.xlabel("电影", fontproperties=my_font)
plt.ylabel("票房 单位(亿)", fontproperties=my_font)
plt.title("2017年票房前20", fontproperties=my_font)
# 保存图片
plt.savefig("./movie.png")
plt.show()
2、水平条形图
barh(y, width, height=0.8)
# y是y轴
# width是x轴
# height是条形图的宽度
例子
from matplotlib import pyplot as plt
from matplotlib import font_manager a = ["战狼2", "熟读与激情8", "功夫瑜伽", "西游伏妖篇", "变形金刚5: 最后的骑士", "摔跤吧!爸爸", "加勒比海盗5: 死无对证",
"金刚: 骷髅岛", "极限特工: 终极回归", "生化危机6: 终章", "乘风波浪", "神偷奶爸3", "智取威虎山", "大闹天竺", "金刚狼3: 殊死一战",
"蜘蛛侠: 英雄归来", "悟空转", "银河护卫队2", "情圣", "新木乃伊"]
b = [56.01, 26.94, 17.53, 16.49, 15.45, 12.96, 11.8, 11.61, 11.28, 11.12, 10.49, 10.3, 8.75, 7.55, 7.32, 6.99, 6.88, 6.86, 6.58, 6.23] # 设置中文显示
my_font = font_manager.FontProperties(fname="C:\Windows\Fonts\msjh.ttc")
# 设置图形大小
plt.figure(figsize=(20, 10), dpi=80) # 绘图
y = range(len(a))
plt.barh(y, b, height=0.4, color="#FF00FF")
# 设置y轴的刻度和label
plt.yticks(y, a, fontproperties=my_font)
# 添加描述
plt.xlabel("票房 单位(亿)", fontproperties=my_font)
plt.ylabel("电影", fontproperties=my_font)
plt.title("2017年票房前20", fontproperties=my_font)
# 添加网格
plt.grid(alpha=0.4)
plt.show()
三、多个条形图
from matplotlib import pyplot as plt
from matplotlib import font_manager a = ["猩球崛起: 终极之战", "敦刻尔克", "蜘蛛侠: 英雄归来", "战狼2"]
b_16 = [15746, 312, 4497, 319]
b_15 = [12357, 156, 2045, 168]
b_14 = [2358, 399, 2358, 262] my_font = font_manager.FontProperties(fname="C:\Windows\Fonts\msjh.ttc") bar_width = 0.2
# 设置图形大小
plt.figure(figsize=(20, 8), dpi=80)
# 绘图
x_14 = range(len(a))
x_15 = [i + bar_width for i in range(len(a))]
x_16 = [i + 2 * bar_width for i in range(len(a))]
plt.bar(x_14, b_14, width=bar_width, label="14号票房")
plt.bar(x_15, b_15, width=bar_width, label="15号票房")
plt.bar(x_16, b_16, width=bar_width, label="16号票房") # 设置x轴刻度
plt.xticks(x_15, a, fontproperties=my_font) # 添加描述
plt.xlabel("电影", fontproperties=my_font)
plt.ylabel("票房", fontproperties=my_font)
plt.title("3天票房比较", fontproperties=my_font) # 添加图例
plt.legend(prop=my_font)
# 展示图片
plt.show()
matplotlib 条形图的更多相关文章
- matplotlib条形图
三个班级平均分 import matplotlib.pyplot as plt import matplotlib as mpl classes = ['class1','class2','class ...
- matplotlib绘制柱状图
参考自Matplotlib Python 画图教程 (莫烦Python)(11)_演讲•公开课_科技_bilibili_哔哩哔哩 https://www.bilibili.com/video/av16 ...
- Python爱好者社区历史文章列表(每周append更新一次)
2月22日更新: 0.Python从零开始系列连载: Python从零开始系列连载(1)——安装环境 Python从零开始系列连载(2)——jupyter的常用操作 Python从零开始系列连载( ...
- matplotlib入门--1(条形图, 直方图, 盒须图, 饼图)
作图首先要进行数据的输入,matplotlib包只提供作图相关功能,本身并没有数据读入.输出函数,针对各种试验或统计文本数据输入可以使用numpy提供的数据输入函数. # -*- coding: gb ...
- 4.4Python数据处理篇之Matplotlib系列(四)---plt.bar()与plt.barh条形图
目录 目录 前言 (一)竖值条形图 (二)水平条形图 1.使用bar()绘制: 2.使用barh()绘制: (三)复杂的条形图 1.并列条形图: 2.叠加条形图: 3.添加图例于数据标签的条形图: 目 ...
- matplotlib常见绘图基础代码小结:折线图、散点图、条形图、直方图、饼图
一.折线图 二.散点图 三.条形图 四.直方图 五.饼图 一.折线图折线图用于显示随时间或有序类别的变化趋势 from matplotlib import pyplot as plt x = rang ...
- 用matplotlib绘制带误差的条形图及中英文字体设置
#!/usr/bin/env python3 ## 以下是一个带误差条的条形图的例子,演示了误差条形图的绘制及中英文字体设置 import numpy as np import matplotlib ...
- Matplotlib基本图形之条形图2
Matplotlib基本图形之条形图2 1.绘制多条条形图 示例代码: import time import numpy as np import matplotlib.pyplot as plt b ...
- Matplotlib基本图形之条形图
Matplotlib基本图形之条形图 条形图特点: 以长方形的长度为变量的统计图表用来比较多个数据分类的数据大小通常用于较小的数据集分析例如不同季度的销量,不同国家的人口 示例代码: import o ...
随机推荐
- jQuery验证码发送时间秒递减(刷新存储cookie)
<input id="sendEmail" type="button" name="sendEmail" onclick=" ...
- Docker 安装nginx 与端口映射
1. 拉取镜像(网易云docker镜像仓库) docker pull hub.c.163.com/library/nginx:latest 2. 运行nignx,并做端口映射 -d 后台运行 -p映 ...
- 使用IDEA创建基于Maven SpringMvc项目
使用IDEA创建基于Maven SpringMvc项目 1.通过程序启动——create project,或者file--New-projec打开New project 2.自定义groupid等信息 ...
- CSS一行显示,显示不下的用省略号显示
CSS一行显示,显示不下的用省略号显示 .abc{ white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } 复制上面代码即可 ...
- 根据经纬度查询附近几公里的门店(<5)代表5公里
select * from 表名 where status=1 and isopen =0 and jingyingtype=1 and waimai=1 and bstatus = 1 and (a ...
- Linux基础:认识Linux
1.Linux操作系统的特点 优点 (1)可靠性高:linux是基于Unix的概念开发出来的系统,拥有Unix的稳定且效率的特点.运行一年以上而不曾宕机.不必关机是很平常的事情 : (2)彻底 ...
- VS2017+QT5.11.2+SeetaFace1.0/SeetaFace2.0的简单实现
SeetaFace开源引擎GitHub地址:https://github.com/seetaface/SeetaFaceEngine SeetaFace2开源引擎GitHub地址:https://gi ...
- 页面显示jsp源码问题
问题错误在于WEB.XML 将/*改为*即可
- Zabbix监控web
1.1 创建主机 1.2 应用集 1.3 创建web场景 1.4 创建触发器
- Spring Boot 配置文件中使用变量、使用随机数
参数引用 在application.properties中的各个参数之间可以直接通过是使用placeHolder的方式进行引用,如: book.author=Clark book.name=C++ b ...