水平条状图

简介: 水平条状图
import matplotlib.pyplot as plt
plt.rcParams["font.sans-serif"] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
# 绘制水平条状图
index = np.arange(5)
values1 = np.random.randint(10, 17, 5)
values2 = np.random.randint(10, 17, 5)
values3 = np.random.randint(10, 17, 5)
# 绘制条状图
bar_height = 0.3
plt.barh(index, values1, height=0.3, label='社保项目1', color='r')
plt.barh(index+bar_height, values2, height=0.3, label='社保项目2', color='b')
plt.barh(index+bar_height*2, values3, height=0.3, label='社保项目2', color='y')
# y轴标签
plt.yticks(index + bar_height, list('ABCDE'))
# 显示数值标签
for a, b in zip(values1, index):
    plt.text(a, b, '%.0f' % a, ha='left', va= 'center', fontsize=7)
for a, b in zip(values2, index):
    plt.text(a, b+bar_height, '%.0f' % a, ha='left', va= 'center', fontsize=7)
for a, b in zip(values3, index):
    plt.text(a, b+bar_height*2, '%.0f' % a, ha='left', va= 'center', fontsize=7)
# 设置标题
plt.title('社保项目营收', fontsize=20)
plt.xlabel('项目类型')
plt.ylabel('项目合同额(亿元)')
plt.axis([0, 20, -0.4, 5])
plt.legend(loc=4)
plt.show()

网络异常,图片无法展示
|

3. 饼图

除了条状图, 饼图也可以用来表示数据.用pie()函数制作饼图很简单.

from pandas import Series, DataFrame
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["font.sans-serif"] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
%matplotlib inline
# 设置图像大小
plt.figure(figsize=(9,9))
# 设置标签
labels = ['Java开发', '项目经理', '测试运维人员', 'Python开发', '架构师']
# 标签对应的值
values = [6000, 1000, 2000, 7000, 500]
# 每一个标签饼图的颜色
colors = ['red', '#FEDD62', 'blue', 'gray', 'green']
# 那一块内容需要脱离饼图凸显, 可选值0-1
explode = [0.1, 0.1, 0, 0, 0]
# autopct='%1.1f%%'表示显示百分比
# shadow显示阴影
# startangle 正值表示逆时针旋转
plt.pie(values, 
      labels=labels, 
      colors=colors, 
      explode=explode, 
      startangle=90, 
      shadow=True, 
      autopct='%1.1f%%')
# 设置为标准圆形
plt.axis('equal')
# 显示图例
plt.legend(loc=2)
plt.title('东软软件工程师人员职位占比')
plt.show()
相关文章
|
4天前
|
存储 算法 前端开发
1637. 两点之间不包含任何点的最宽垂直区域
1637. 两点之间不包含任何点的最宽垂直区域
24 0
|
iOS开发
SwiftUI极简教程34:LazyVGrid垂直网格和LazyHGrid水平网格的使用
SwiftUI极简教程34:LazyVGrid垂直网格和LazyHGrid水平网格的使用
1600 0
SwiftUI极简教程34:LazyVGrid垂直网格和LazyHGrid水平网格的使用
|
7月前
|
存储 数据可视化 数据处理
ggalluvial | 冲击图/ 桑基图绘制
ggalluvial | 冲击图/ 桑基图绘制
95 0
|
8月前
P1598 垂直柱状图(模拟)
P1598 垂直柱状图(模拟)
25 0
|
11月前
|
数据可视化
ggrisk|高效绘制风险因子联动图
ggrisk|高效绘制风险因子联动图
306 1
|
11月前
群落堆叠柱状图+冲击图绘制
群落堆叠柱状图+冲击图绘制
84 1
|
机器学习/深度学习 算法 数据可视化
可视化图布局算法浅析
图算法在前端领域考察的较少,一般除非是要写框架或者打包工具对依赖关系处理(DAG)会用到,前端对图算法的考察一般是比较少的,而对于可视化领域而言,图又是必不可少的一种展示方式,其中对于边和节点的展示布局方案结合美学效果会有不同的算法实现,本文旨在介绍一些常见的通用布局算法,其中的每个小的布局方案也会有不同的分支实现
326 0
|
前端开发 容器
这8张脑图几乎概括了所有的布局方案,确定不看看吗?
前端布局不管是在面试过程中还是在工作中都是非常重要的一部分,一个优秀的前端工程师可以在很快的时间内写出同一种布局的多种实现方案,练习并掌握CSS布局方案可以提高我们的页面开发速度。
106 0
项目实战:Qt球机控制工具 v1.0.0(球机运动八个方向以及运动速度,设置运动到指定角度,查询当前水平和垂直角度)
项目实战:Qt球机控制工具 v1.0.0(球机运动八个方向以及运动速度,设置运动到指定角度,查询当前水平和垂直角度)
项目实战:Qt球机控制工具 v1.0.0(球机运动八个方向以及运动速度,设置运动到指定角度,查询当前水平和垂直角度)