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 条评论
登录 后参与评论

相关文章

来自专栏用户2442861的专栏

MATLAB 中有哪些命令,让人相见恨晚?

提问都说了是命令,大家回答那么多函数干什么... 我来给一个超级大杀器 在命令行敲入 dbstop if error

1301
来自专栏CDA数据分析师

利用Python绘图和可视化(长文慎入)

Python有许多可视化工具,但是我主要讲解matplotlib(http://matplotlib.sourceforge.net)。此外,还可以利用诸如d3...

6917
来自专栏杨建荣的学习笔记

Java随机数算法(一)(r11笔记第14天)

问:如何生成一个随机的字符串?答:让新手退出VIM 。 这可能也是随机字符的一种由来:) 我们今天要说的是随机数算法,这个我策划了好久,但是进展缓慢。...

3667
来自专栏拂晓风起

Flex Actionscript 3 小球碰撞 多球碰撞

1144
来自专栏jiajia_deng

Qt 用画笔对图片实现马赛克效果

最近接了一个用 Qt 做跨平台截图工具的任务,主要功能有截图、绘制图案、马赛克、毛玻璃、文字能效果,其中马赛克功能时参考网上的文献并自己研究制作出来的,这里特意...

951
来自专栏大数据杂谈

【Excel系列】Excel数据分析:数据整理

1. 直方图的功能 “直方图”分析工具可计算数据单元格区域和数据接收区间的单个和累积频率。此工具可用于统计数据集中某个数值出现的次数,其功能基本上相当于函数FR...

2227
来自专栏杨建荣的学习笔记

圆周率π是怎么算出来的,用程序怎么算

下午在看一个算法的时候,突然看到了一个关于圆周率的问题,如果问你圆的周长怎么算,你肯定毫不犹豫是2πR,但是π是怎么算出来的呢?估计我们都没有想过,所以...

1043
来自专栏owent

C++ 新特性学习(六) — 新的字符串编码和伪随机数

使用u””为能至少储存UTF-16的16位元编码,对应’\u’表示16位元的字符。

611
来自专栏数据结构与算法

P1032 字串变换

题目描述 已知有两个字串 A, B 及一组字串变换的规则(至多6个规则):      A1 -> B1      A2 -> B2 规则的含义为:在 A$中的子...

3146
来自专栏瓜大三哥

直方图操作(三)

直方图操作(三) 之读出电路 顺序读出:即灰度值为0的统计值首先输出,其次是灰度值为1的统计值输出。读出电路如下图 ? 只有当计数完成,并且外部时序申请读出时...

1889

扫码关注云+社区