试玩了一下 matplotlib, 感觉是:很酥狐吖~ 完全不像 ggplot 那样云里雾里,但是后者展现出的图要漂亮优雅许多。

x = linspace(0, 10, 100) //初始化一个 [0, 10] 的向量,一共 100 个。
print(x) // 我们可以打印看下这个变量长啥样:

[ 0. 0.1010101 0.2020202 0.3030303 0.4040404
0.50505051 0.60606061 0.70707071 0.80808081 0.90909091
1.01010101 1.11111111 1.21212121 1.31313131 1.41414141
1.51515152 1.61616162 1.71717172 1.81818182 1.91919192
2.02020202 2.12121212 2.22222222 2.32323232 2.42424242
2.52525253 2.62626263 2.72727273 2.82828283 2.92929293
3.03030303 3.13131313 3.23232323 3.33333333 3.43434343
3.53535354 3.63636364 3.73737374 3.83838384 3.93939394
4.04040404 4.14141414 4.24242424 4.34343434 4.44444444
4.54545455 4.64646465 4.74747475 4.84848485 4.94949495
5.05050505 5.15151515 5.25252525 5.35353535 5.45454545
5.55555556 5.65656566 5.75757576 5.85858586 5.95959596
6.06060606 6.16161616 6.26262626 6.36363636 6.46464646
6.56565657 6.66666667 6.76767677 6.86868687 6.96969697
7.07070707 7.17171717 7.27272727 7.37373737 7.47474747
7.57575758 7.67676768 7.77777778 7.87878788 7.97979798
8.08080808 8.18181818 8.28282828 8.38383838 8.48484848
8.58585859 8.68686869 8.78787879 8.88888889 8.98989899
9.09090909 9.19191919 9.29292929 9.39393939 9.49494949
9.5959596 9.6969697 9.7979798 9.8989899 10. ]

plot(x, sin(x))  // 画第一条曲线
plot(x, 0.5*cos(2*x)) // 画第二条曲线
title("A Matplotlib Plot")
text(1, -0.8, "A Text Label")
ylim(-1.1, 1.1) // 限定 y 轴的取值范围。不限定的画曲线就会顶到边界,很不好看

然后划出来的图就会长这样:

x1=linspace(1, 10, 40)
plot(x1, sqrt(x1), 'k-') // k 表示黑色, b 表示蓝色,沿用 matlab 中的助记符

这时候就会 print 出 figure(1):

figure(2)  // 新建一个画布
x2=linspace(1, 10, 100)
plot(x1, sin(x1), 'k--', x2, 0.2*cos(3*x2), 'k:')

figure(1) // 重新选择 figure(1)
plot(x1, 3*exp(-x1/2), linestyle='None', color='white', marker='o', markersize=7) // 在上面增加一个用记号 'o' 表示的散点图
savefig('graph1.png') // 存为 png 格式的

clf() // 擦除画布
ps = plot(x, sin(x), x, cos(x))
t1=text(1, -0.5, "hello")
t2=text(3, 0.5, "hello again")

这时候图片长这样:

t1.set_position([7, -.5])
t2.set(position=[5, 0], text="good bye")

这时候虽然改变了 t1, t2 的位置信息 / text, 但是图片还是跟原来一样,没有改变,必须显示的调用 draw() 函数才可以改变:

draw()

这时候图片就更新成这样了:

setp([t1,t2], fontsize=10)

但是上面这一句可以立即更新图片,字体变小了:

t2.remove()  // 擦除一个文字
Artist.remove(ps[1]) // 擦除一条曲线
draw()

擦除完之后:

matplotlib 初使用的更多相关文章

  1. Matplotlib初体验

    为一个客户做了关于每个差异otu在时间点上变化的折线图,使用python第一次做批量作图的程序,虽然是很简单的折线图,但是也是第一次使用matplotlib的纪念. ps:在第一个脚本上做了点小的改动 ...

  2. 机器学习初入门03 - Matplotlib

    这一部分很简单,所以以代码的形式给出,在实际学习开发中,Matplotlib最好只把它当成一个画图的工具来用,没有必要深究其实现原理是什么. 一.折线图的绘制 import pandas as pd ...

  3. 初接触matplotlib

    1,绘制简单的折线图. 1 import matplotlib.pyplot as plt 2 3 square = [1,4,9,16,25] 4 5 plt.plot(square) 6 plt. ...

  4. matplotlib之散点图

    环境:windows系统,anaconda3 64位,python 3.6 1.初认识 基本代码如下: import numpy as np import matplotlib.pyplot as p ...

  5. (数据科学学习手札35)tensorflow初体验

    一.简介 TensorFlow时谷歌于2015年11月宣布在Github上开源的第二代分布式机器学习系统,目前仍处于快速开发迭代中,有大量的新功能新特性在陆续研发中: TensorFlow既是一个实现 ...

  6. matplotlib 知识点13:绘制散点图(scatter函数精讲)

    散点图是指在回归分析中,数据点在直角坐标系平面上的分布图,散点图表示因变量随自变量而变化的大致趋势,据此可以选择合适的函数对数据点进行拟合. 用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间 ...

  7. python基础之Matplotlib库的使用一(平面图)

    在我们过去的几篇博客中,说到了Numpy的使用,我们可以生成一些数据了,下面我们来看看怎么让这些数据呈现在图画上,让我们更加直观的来分析数据. 安装过程我就不再说了,不会安装的,回去补补python最 ...

  8. CNN Mini-Fashion数据集以及Pytorch初体验

    下载Fasion-MNIST数据集 Fashion-MNIST是一个替代原始的MNIST手写数字数据集的另一个图像数据集. 它是由Zalando(一家德国的时尚科技公司)旗下的研究部门提供.其涵盖了来 ...

  9. matplotlib命令与格式:参数配置文件与参数配置

    转自 https://my.oschina.net/swuly302/blog/94805 自定义matplotlib Created Saturday 08 December 2012 5.1 ma ...

随机推荐

  1. Python的设计模式学习

    1.工厂模式 #encoding=utf-8 __author__ = 'kevinlu1010@qq.com' class ADD(): def getResult(self,*args): ret ...

  2. poj 2342 Anniversary party 树形DP入门

    题目链接:http://poj.org/problem?id=2342 题意:一家公司有1 <= N <= 6 000个职工,现要组织一些职工参加晚会,要求每个职工和其顶头上司不能同时参加 ...

  3. 原生 JavaScript 图片裁剪效果

    图片裁剪程序效果如下,可鼠标操作.   拖动左边小方框时在右侧实时显示对应的裁剪图片,同时左侧的拖动框里图片完全显示,拖动框外部图片模糊显示.8个控制点可以对显示区域大小进行控制. HTML 和 CS ...

  4. Python标准库与第三方库详解(转载)

    转载地址: http://www.codeweblog.com/python%e6%a0%87%e5%87%86%e5%ba%93%e4%b8%8e%e7%ac%ac%e4%b8%89%e6%96%b ...

  5. Collection和Collections的区别

    Collection 是集合类的上级接口,继承它的接口主要有set和list.Collections 是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索,排序,线程安全化等操作.

  6. YARN加载本地库抛出Unable to load native-hadoop library解决办法

    YARN加载本地库抛出Unable to load native-hadoop library解决办法 用官方的Hadoop 2.1.0-beta安装后,每次hadoop命令进去都会抛出这样一个War ...

  7. Tesseract 3 语言数据的训练方法

    OCR,光学字符识别 光学字符识别(OCR,Optical Character Recognition)是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程.OCR技术非常专业 ...

  8. CSS display 属性详解

    定义display 属性设置是否及如何显示元素. 继承性: No 说明 这个属性用于定义建立布局时元素生成的显示框类型.对于 HTML 等文档类型,如果使用 display 不 谨慎会很危险,因为可能 ...

  9. Spring+MyBatis实践—工程配置

    初次实践:Spring+MyBatis技术搭建框架,采用Bootstrap前端开源框架. 简介: MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所 ...

  10. php的curl获取https加密协议请求返回json数据进行信息获取

    <?php header("Content-type:text/html; charset=utf-8");function getToken($url){        $ ...