python画图:matplotlib(1)

python matplotlib

matplotlibpython中用来绘图的一个库,提供非常强大的绘图功能。

安装

pip install matplotlib pillow

面向对象风格

首先要理解两个对象,一个是Figure,一个是AxesSubplot,Figure是一个窗口,他是AxesSubplot的容器,真正的绘图要在AxesSubplot上进行。

import matplotlib.pyplot as plt
#如何看待plt呢,我觉着plt是一个包含fig的容器

fig = plt.figure() #创建Figure对象
axes1 = fig.add_subplot(2,2,1) #在fig中创建axes,用来画图
#参数的意思是,在fig中创建了2行2列的axes,将第一个axes返回
axes2 = fig.add_subplot(2,2,2) #将第二个返回

#使用axes绘图
axe1.hist(randn(100), bins=20, color='k', alpha=0.3)
axe2.hist(randn(100), bins=20, color='k', alpha=0.3)

#显示,最后一定要加个plt.show(),不然不会显示
plt.show()

一个更加简单创建fig和axes的方法

#创建一个2*3个axes的fig图像,并返回。axes是一个2*3的对象数组
fig, axes = plt.subplots(2,3)
...
...
plt.show()

面向过程风格

一个plt吃遍天

import matplotlib.pyplot as plt

#可以直接使用plt绘图.
plt.hist(randn(100), bins=20, color='k', alpha=0.3)

#多个axes
fig = plt.figure()
axes1 = fig.add_subplot(2,2,1)
axes2 = fig.add_subplot(2,2,1)
plt.sca(axes1)#设定当前的axes
plt.hist(...) #在当前axes上绘图
plt.sca(axes2)#
plt.hist(...)# 在axes2上绘图

plt.show()

可以看出,面向过程就是通过plt设置当前的axes,然后,用plt在当前axes上画图

axes

axes对象都有拥有几个函数:
axes.xlabel("...") #x轴 label
axes.ylabel("...") #y轴 label
axes.title("...")  #axes的title
axes.xlim(start, end)
axes.ylim(start, end)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏木子昭的博客

用面向对象的方法写"敲门砖"

一道名为"敲门砖"的面试题: 用面向对象的方法写,点击列表内,子元素的子标签, 来删除子元素 ? 考点: 递归(删除标签, 需要找到列表的直属子标签, 需要通...

3193
来自专栏影子

jQuery中的常用内容总结(一)

3269
来自专栏互联网杂技

最全面的前端开发指南

HTML 语义 HTML5为我们提供了很多旨在精确描述内容的语义元素。确保你可以从它丰富的词汇中获益。 <!-- bad --> <div id="main">...

3217
来自专栏小壮和前端

js手写俄罗斯方块

641
来自专栏用户2442861的专栏

最简单的JavaScript模板引擎

 在小公司待久了感觉自己的知识面很小,最近逛博客园和一些技术网站看大家在说JavaScript模版引擎的事儿,完全没有概念,网上一搜这是08年开始流行起来的。。...

441
来自专栏软件开发

前端MVC Vue2学习总结(四)——条件渲染、列表渲染、事件处理器

一、条件渲染 1.1、v-if 在字符串模板中,如 Handlebars ,我们得像这样写一个条件块: <!-- Handlebars 模板 --> {{#if...

42011
来自专栏python学习路

五、XML与xpath--------------爬取美女图片 先用一个小实例开头吧(爬取贴吧每个帖子的图片)XML 和 HTML 的区别XML文档示例

除了正则表达式处理HTML文档,我们还可以用XPath,先将 HTML文件 转换成 XML文档,然后用 XPath 查找 HTML 节点或元素。 ----  先...

2804
来自专栏IMWeb前端团队

JavaScript强化教程——Prototype

本文为 H5EDU 机构官方 HTML5培训 教程,主要介绍:JavaScript强化教程 —— Prototype 引用 Prototype 如需测试 Jav...

1889
来自专栏编程

从 0到1,开发一个动画库(1)

作者:jshao https://segmentfault.com/a/1190000012923589 如今市面上关于动画的开源库多得数不胜数,有关于CSS、...

1868
来自专栏Golang语言社区

设计包导出接口的随想

简介:本文讨论在设计一个包的导出接口时遇到的问题以及所采取的解决思路和方法,并提供了模拟代码作为例子。 假设有一个包gameword有个导出结构Player,包...

3306

扫码关注云+社区