Python绘制柱状图
1.1Python绘制柱状图对应代码如下所示
import matplotlib.pyplot as plt
import numpy as np from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['STZhongsong'] # 指定默认字体:解决plot不能显示中文问题
mpl.rcParams['axes.unicode_minus'] = False x=["孙悟空","唐僧","猪八戒","沙悟净"] y=[4,1,3,2] plt.bar(x,y,width=0.5,align="center",label="战力值",color="red") plt.title("师徒战力排行榜",loc="center") for a,b in zip(x,y):
plt.text(a,b,b,ha='center',va="bottom",fontsize=12) plt.xlabel('姓名') plt.ylabel('战力值') plt.legend() plt.show()
1.2、最终结果如下图所示

1.3Python绘制横向柱状图
import matplotlib.pyplot as plt
import numpy as np from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['STZhongsong'] # 指定默认字体:解决plot不能显示中文问题
mpl.rcParams['axes.unicode_minus'] = False x=["孙悟空","唐僧","猪八戒","沙悟净","牛魔王","哪吒","二郎神"] y=[10,1,6,5,7,8,9] plt.barh(x,width=y,height=0.6,align="center",label="战力值",color="green",edgecolor="rgb")
'''
width 表示柱子的宽度,每根柱子的宽度可以都一样,也可以各不相同
align center:表示柱子位于x值的中心位置,edge:表示柱子位于x值的右边
color 柱子的颜色
edgecolor 柱子边缘的颜色
'''
plt.title("战力排行榜",loc="center") for a,b in zip(x,y):
plt.text(b,a,b,ha='center',va="bottom",fontsize=12) plt.xlabel('姓名') plt.ylabel('战力值') plt.legend() plt.show()
1.4最终结果如下图所示

1.5Python绘制堆叠柱状图
import matplotlib.pyplot as plt
import numpy as np from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['STZhongsong'] # 指定默认字体:解决plot不能显示中文问题
mpl.rcParams['axes.unicode_minus'] = False x=["唐僧","孙悟空","猪八戒","沙悟净"] y1=[10,6,3,7] y2=[3,10,7,6] list3=[]
for i in range(len(y1)):
new_value=y1[i]+y2[i]
list3.append(new_value) plt.bar(x,y1,width=0.3,label="魅力值",color="orange") plt.bar(x,y2,width=0.3,label="武力值",color="red",bottom=y1) plt.title("师徒战力排行榜") for a,b in zip(x,y1):
plt.text(a,b,b,ha='center',va="top",fontsize=12) for a,b,c in zip(x,list3,y2):
plt.text(a,b,c,ha='center',va="bottom",fontsize=12) plt.xlabel('姓名') plt.ylabel('魅力值') plt.legend(loc="best") plt.show()
1.6最终结果如下图所示

1.7Python绘制并列柱状图
import matplotlib.pyplot as plt
import numpy as np from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['STZhongsong'] # 指定默认字体:解决plot不能显示中文问题
mpl.rcParams['axes.unicode_minus'] = False plt.subplot(1,1,1) x=np.array([1,2,3,4]) y1=[10,6,3,7] y2=[3,10,7,6] plt.bar(x,y1,width=0.3,align="center",label="魅力值") plt.bar(x+0.3,y2,width=0.3,align="center",label="武力值") plt.title("师徒战力排行榜") for a,b in zip(x,y1):
plt.text(a,b,b,ha='center',va="bottom",fontsize=12) for a,b in zip(x+0.3,y2):
plt.text(a,b,b,ha='center',va="bottom",fontsize=12) plt.xlabel('姓名') plt.ylabel('魅力值') plt.xticks(x+0.15,["唐僧","孙悟空","猪八戒","沙悟净"]) plt.legend() plt.show()
1.8最终结果如下所示

Python绘制柱状图的更多相关文章
- python 绘制柱状图
python 绘制柱状图 import matplotlib.pyplot as plt import numpy as np # 创建一个点数为 8 x 6 的窗口, 并设置分辨率为 80像素/每英 ...
- Python 绘制 柱状图
用Python 绘制 柱状图,使用的是bar()函数. 一个简单的例子: # 创建一个点数为 8 x 6 的窗口, 并设置分辨率为 80像素/每英寸 plt.figure(figsize=(10, 1 ...
- Python——使用matplotlib绘制柱状图
Python——使用matplotlib绘制柱状图 1.基本柱状图 首先要安装matplotlib(http://matplotlib.org/api/pyplot_api.htm ...
- Python pyecharts绘制柱状图
本文摘抄至https://05x-docs.pyecharts.org/#/zh-cn/charts_base?id=bar%ef%bc%88%e6%9f%b1%e7%8a%b6%e5%9b%be%e ...
- Python绘制六种可视化图表详解,三维图最炫酷!你觉得呢?
Python绘制六种可视化图表详解,三维图最炫酷!你觉得呢? 可视化图表,有相当多种,但常见的也就下面几种,其他比较复杂一点,大都也是基于如下几种进行组合,变换出来的.对于初学者来说,很容易被这官网上 ...
- 如何用 Python 绘制玫瑰图等常见疫情图
新冠疫情已经持续好几个月了,目前,我国疫情已经基本控制住了,而欧美国家正处于爆发期,我们会看到很多网站都提供了多种疫情统计图,今天我们使用 Python 的 pyecharts 框架来绘制一些比较常见 ...
- Python绘制Excel图表
今天讲解下如何使用Python绘制各种Excel图表,下面我们以绘制饼状图.柱状图.水平图.气泡图.2D面积图.3D面积图为例来说明. import openpyxlfrom openpyxl imp ...
- Python绘制PDF文件~超简单的小程序
Python绘制PDF文件 项目简介 这次项目很简单,本次项目课,代码不超过40行,主要是使用 urllib和reportlab模块,来生成一个pdf文件. reportlab官方文档 http:// ...
- 使用 highchart 绘制柱状图的通用方法与接口
本文给出使用 highchart 绘制柱状图的通用方法与接口, 只要指定相应的数据结构和配置, 就可以直接拿来使用. 一. 数据结构与基本接口 一般绘制图形, 会涉及到较复杂的数据结构, 比如使 ...
随机推荐
- Python 循环控制
for循环 Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串 for 变量 in 列表.字典.字符串.函数: 执行语句 ...
- ubuntu更換清華軟件源
打开软件源的编辑sudo gedit /etc/apt/sources.list 软件源: Ubuntu--更改国内镜像源(阿里.网易.清华.中科大) 打開軟件源文件進行修改: 使用 sudo vim ...
- 接口返回图片,前端生成临时url实现展示、下载效果
请求一个后端接口 返回一张图片(打印后发现是二进制流) 瞬间不开心了(为什么不能后端处理好再让前端调用呢) 不过丝毫不慌好吧 先说处理逻辑:首先要将获取到的数据转换,这边选择以blob形式进行转换 主 ...
- [cf700D]Huffman Coding on Segment
令$tot_{i}$为区间$[l,r]$中满足$a_{j}=i$的$j$的个数,将所有非0的$tot_{i}$取出,得到可重集$S$ 显然,有以下贪心:不断取出$S$中最小的两个元素,删除这两个元素并 ...
- 深度剖析Spring Boot自动装配机制实现原理
在前面的分析中,Spring Framework一直在致力于解决一个问题,就是如何让bean的管理变得更简单,如何让开发者尽可能的少关注一些基础化的bean的配置,从而实现自动装配.所以,所谓的自动装 ...
- 一个非常好用的IDEA插件,用于填充set
对于对接三方接口总有一堆字段参数,如在入参时需要赋值,将请求参数封装成一个pojo实体类,然后需要为其set,调用许多setter方法,如果一行行去编写很麻烦,...能不能节省一下我仅存的生产力呀.. ...
- Apache ZooKeeper原理剖析及分布式理论名企高频面试v3.7.0
概述 **本人博客网站 **IT小神 www.itxiaoshen.com 定义 Apache ZooKeeper官网 https://zookeeper.apache.org/ 最新版本3.7.0 ...
- Linux系统编程之命名管道与共享内存
在上一篇博客中,我们已经熟悉并使用了匿名管道,这篇博客我们将讲述进程间通信另外两种常见方式--命名管道与共享内存. 1.命名管道 管道是使用文件的方式,进行进程之间的通信.因此对于管道的操作,实际上还 ...
- PHP面试经常被问cgi、fastcgi、php-fpm、mod_php的区别
cgi.fastcgi.php-fpm.mod_php cgi cgi是公共网关接口,用户通过浏览器来访问执行再服务器上的动态程序,CGI是Web 服务器与CGI程序间传输数据的标准.准确来说是一种协 ...
- JAVA中复制数组的方法
在JAVA里面,可以用复制语句"A=B"给基本类型的数据传递值,但是如果A,B是两个同类型的数组,复制就相当于将一个数组变量的引用传递给另一个数组;如果一个数组发生改变,那么 引用 ...