1.绘制折线图

#! /usr/bin/env python
#encoding=utf-8 # 用于python2
import sys
reload(sys)
sys.setdefaultencoding('utf-8') # matplotlib绘制图片汉字不能正常显示问题
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False import numpy as np
import matplotlib.pyplot as plt x = ["test" + str(i) for i in range(, )]
y = np.random.rand()
# 设置图像窗口大小
plt.figure(figsize=(, ), dpi=)
plt.plot(x, y)
# 数字和字符串一一对应, 数据的长度一样, ratation旋转的度数
plt.xticks(x[::], x[::], rotation=) # labelpad Spacing in points between the label and the x-axis
plt.xlabel(u"电影名称", labelpad=)
plt.ylabel(u"上座率", labelpad=)
plt.title(u"上座率变化情况")
plt.show()

2.绘制散点图

from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False import numpy as np
import matplotlib.pyplot as plt x = ["电影" + str(i) for i in range(, )]
y = np.random.randint(, , )
# 设置图像窗口大小
plt.figure(figsize=(, ), dpi=)
plt.scatter(x, y, alpha=0.4, edgecolors='white') # 数字和字符串一一对应, 数据的长度一样, ratation旋转的度数
plt.xticks(x, x, rotation=)
# labelpad Spacing in points between the label and the x-axis
plt.xlabel(u"电影名称", labelpad=)
plt.ylabel(u"上座数量", labelpad=)
plt.title(u"上座数量变化情况")
plt.show()

3.绘制水平条形图

from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False import numpy as np
import matplotlib.pyplot as plt x = ["电影" + str(i) for i in range(, )]
y = np.random.randint(, , )
y = sorted(y, reverse=True) # 设置图像窗口大小
plt.figure(figsize=(, ), dpi=)
plt.barh(range(len(x)), y, height=0.5, color='red')
plt.yticks(range(len(x)), x, color='black')
plt.grid(alpha=0.3)
plt.show()

4.绘制条形图

# 解决matplotlib绘制图片汉字不能正常显示问题
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False import numpy as np
import matplotlib.pyplot as plt x = ["电影" + str(i) for i in range(, )]
y = np.random.randint(, , )
y = sorted(y, reverse=True)
# 设置图像窗口大小
plt.figure(figsize=(, ), dpi=)
plt.bar(range(len(x)), y, width=0.6)
# 数字和字符串一一对应, 数据的长度一样, ratation旋转的度数
plt.xticks(range(len(x)), x, rotation=) # labelpad Spacing in points between the label and the x-axis
plt.xlabel(u"电影名称", labelpad=)
plt.ylabel(u"上座数量", labelpad=)
plt.title(u"上座数量变化情况")
plt.show()

5.绘制饼图

# matplotlib绘制图片汉字不能正常显示问题
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False import matplotlib.pyplot as plt
import random # 学习时间分配
pro_name = ["C++", "Python", "Java", "Go", "shell"]
pro_time = [, , , , ] # 画饼
# plt.pie(pro_time, labels=pro_name, autopct="%3.2f%%", colors=["#ea6f5a", "#509839", "#0c8ac5", "#d29922", "#fdf6e3"])
plt.pie(pro_time, labels=pro_name, autopct="%3.2f%%") # 指定标题
plt.title("学习时间分配") # 保证为图形为正圆
plt.axis("equal") plt.legend(loc="best")
plt.show()

6.绘制多条折线图

# 解决matplotlib绘制图片汉字不能正常显示问题
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False import numpy as np
import matplotlib.pyplot as plt
import random x = [h for h in range(, )]
hainan_y = [random.randint(, ) for t in range(, )] # 设置画板属性
plt.figure(figsize=(, ), dpi = ) # 往画板绘图
plt.plot(x, hainan_y, label="海南") # 模拟北京一天内温度的变化 # 生成y轴的温度随机值(, )
beijing_y = [random.randint(, ) for t in range(, )]
# 往画板绘图
plt.plot(x, beijing_y, label="北京") # 模拟河北一天内温度的变化
hebei_y = [random.randint(, ) for t in range(, )]
# 自定义绘制属性: 颜色color="#0c8ac5", linestyle"-"""--""-.":", 线宽linewidth, 透明度alpha
plt.plot(x, hebei_y, label="河北") # 生成24小时的描述
x_ = [x_ for x_ in range(, )]
x_desc = ["{}时".format(x_desc) for x_desc in x_]
# 设置x轴显示 24小时
plt.xticks(x_, x_desc) # 生成10至30度的描述
y_ = [y_ for y_ in range(, )][::]
y_desc = ["{}℃".format(y_desc) for y_desc in y_]
# 设置y轴显示温度描述
plt.yticks(y_, y_desc) # 指定x y轴的名称
plt.xlabel("时间")
plt.ylabel("温度") # 指定标题
plt.title("一天内温度的变化") # 显示图例
plt.legend(loc="best") # 在浏览器内展示图片
plt.show()

7.绘制多个条形图

# 解决matplotlib绘制图片汉字不能正常显示问题
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False import numpy as np
import matplotlib.pyplot as plt x = ['2019-06-10', '2019-06-11', '2019-06-12', '2019-06-13', '2019-06-14']
y = [[, , ], [, , ], [, , ], [, , ], [, , ]]
label = ["最好的我们", '一般的我们', '比较差的我们'] plt.figure(figsize=(, ), dpi=)
plt.bar([i-0.1 for i in range(len(x))], [i[] for i in y], width=0.1, label=label[])
plt.bar([i for i in range(len(x))], [i[] for i in y], width=0.1, label=label[])
plt.bar([i+0.1 for i in range(len(x))], [i[] for i in y], width=0.1, label=label[]) plt.xlabel("日期", labelpad=)
plt.ylabel("上座数量", labelpad=)
plt.title("每天对应电影的上座数量")
plt.legend(loc="best")
#设置x轴的刻度
plt.xticks(range(len(x)), x)
plt.show()

使用Matplotlab画图的更多相关文章

  1. python matplotlib 绘图基础

    在利用Python做数据分析时,探索数据以及结果展现上图表的应用是不可或缺的. 在Python中通常情况下都是用matplotlib模块进行图表制作. 先理下,matplotlib的结构原理: mat ...

  2. python开发者框架套件总结: package 包 frameworks

    python开发者的package 包 框架套件总结: frameworks     开发环境: anaconda pycharm django awesome-django : 介绍 django ...

  3. 使用pyplot和seaborn进行画图

    pyplot的一些知识 matplotlab中的对象: matplotlib是面向对象的,在画图的时候我们了解一些对象,对我们画图是有帮助的.绘图的对象大致分为三层: backend_bases.Fi ...

  4. Ubuntu 16.10 安装KolourPaint 4画图工具

    KolourPaint 4画图工具简单实用,可以绘画.视频处理和图标编辑: • 绘画:绘制图表和“手绘” • 视频处理:编辑截图和照片;应用特效 • 图标编辑:绘画剪贴和标识透明化 1.在Ubuntu ...

  5. Android开发之画图的实现

    Android开发之画图的实现    四天前上完安卓的第一节课,真的是一脸懵逼,尽管熊哥说和java是差不多的,然而这个包和那个包之间的那些转换都是些什么鬼呀!!!但是四天的学习和操作下来,我觉得安卓 ...

  6. matlab画图函数plot()/set/legend

    简单plot()/legend/XY轴范围axis 除了坐标轴信息外还可以添加其它的信息,如所画曲线的信息等:测试代码如下 x=0:pi/20:2*pi; y1=sin(x); y2=cos(x); ...

  7. 对Raphael画图标的一个jquery简单封装

    公司要做一个项目的demo,要求地图上可以插红旗,所以就用到了Raphael. 因为是个demo,所以地图就用了一张图片,效果如下: 所以为了更好的封装一下这个功能,就写了一个简单的插件:jquery ...

  8. java画图之曲线拖动

    目标:在窗体上按下鼠标按键.然后拖动鼠标,在按下和拖动之间绘制曲线 事件机制 事件源对象:窗体 事件监听方法:addMouseListener(MouseListener l);addMouseMot ...

  9. java画图之初体验

    1.实现画图程序所需的API类 JFrame JButton ActionListener              动作事件接口 ActionEvent                        ...

随机推荐

  1. Flask 中的 Render Redirect HttpResponse

    1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 2.Flask中的Redirect 每当访问"/redi" ...

  2. bat无线热点设置

    netsh wlan set hostednetwork mode=allow ssid=happyla key=1234567890netsh wlan start hostednetwork

  3. mysql(七)查询基本语法

    连接 外连接 如表-------------------------------------------------table1 | table2 |------------------------- ...

  4. concurrent(七)ConcurrentHashMap源码分析

    参考文档:https://www.cnblogs.com/xiaoxi/p/7474026.html https://www.ibm.com/developerworks/cn/java/java-l ...

  5. 冰多多团队Gamma阶段发布说明

    Bingduoduo 语音Coding(Gamma):项目Github地址 Gamma版本新功能介绍 在gamma阶段我们推出了一个更加完整的IDE,完善了部分编辑器功能,并且优化了UI,增添了新的s ...

  6. CURL SSL为6的由来

    起初,我直接用方倍工作室之前做微信接口调用时的http_request函数,发现能正常调用微信api的函数获取不了火星天气数据,然后又尝试用file_get_contents,仍然不行 一直出的错就是 ...

  7. SQL 实现地区的实现树形结构递归查询(无限级分类),level为节点层级,由小至大依次

    //SQL 实现地区的实现树形结构递归查询(无限级分类),level为节点层级,由小至大依次 2018-09-25 StringBuilder areaSQL = new StringBuilder( ...

  8. SQL语句替换某个字段的部分数据

    update `表名` set `字段`= replace(字段, '旧数据', '新数据');

  9. TPad需求和迭代

    需求和迭代最主要的区别是什么

  10. php中命名空间namespace和use

    对于面向对象编程而言,命名空间namespace和use的概念非常重要. 1.根命名空间是反斜线 \ ,有点类似linux中的根目录 / 的那种感觉,但使用var_dump()函数打印时其实是空字符串 ...