scikit-learn:matplotlib.pyplot经常使用绘图功能总结(1)
參考:http://matplotlib.org/api/pyplot_api.html
绘图功能总结(2):http://blog.csdn.net/mmc2015/article/details/48222611
1、matplotlib.pyplot.plot(*args, **kwargs)。最简单的沿坐标轴划线函数:
以下四种格式都合法:
plot(x, y) # plot x and y using default line style and color
plot(x, y, 'bo') # plot x and y using blue circle markers
plot(y) # plot y using x as index array 0..N-1
plot(y, 'r+') # ditto, but with red plusses
<pre name="code" class="python">import numpy as np
import matplotlib.pyplot as plt x1=np.arange(0,5,0.1)
y1=np.sin(x1)
x2=np.linspace(1,10,20,True)
y2=np.cos(x2) plt.plot(x1,y1,'b^')
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
也能够同一时候画一组图:
plt.plot(x1, y1, 'go', x2, y2, 'r-')
假设颜色不显示指出,则默认循环使用不同的颜色,支持的颜色有:
character | color |
---|---|
‘b’ | blue |
‘g’ | green |
‘r’ | red |
‘c’ | cyan |
‘m’ | magenta |
‘y’ | yellow |
‘k’ | black |
‘w’ | white |
支持的line style有:
character | description |
---|---|
'-' | solid line style |
'--' | dashed line style |
'-.' | dash-dot line style |
':' | dotted line style |
'.' | point marker |
',' | pixel marker |
'o' | circle marker |
'v' | triangle_down marker |
'^' | triangle_up marker |
'<' | triangle_left marker |
'>' | triangle_right marker |
'1' | tri_down marker |
'2' | tri_up marker |
'3' | tri_left marker |
'4' | tri_right marker |
's' | square marker |
'p' | pentagon marker |
'*' | star marker |
'h' | hexagon1 marker |
'H' | hexagon2 marker |
'+' | plus marker |
'x' | x marker |
'D' | diamond marker |
'd' | thin_diamond marker |
'|' | vline marker |
'_' | hline marker |
加入图例:
plt.plot([1,2,3], [1,2,3], 'go-', label='line 1', linewidth=2)
plt.plot([1,2,3], [1,4,9], 'rs', label='line 2')
plt.legend()
指定坐标范围:
plt.plot([1,2,3], [1,2,3], 'go-', label='line 1', linewidth=2)
plt.plot([1,2,3], [1,4,9], 'rs', label='line 2')
plt.<strong>axis(</strong>[0, 4, 0, 10])
plt.legend()
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
加入坐标轴说明和标题说明:
plt.plot([1,2,3], [1,2,3], 'go-', <strong>label=</strong>'line 1', linewidth=2)
plt.plot([1,2,3], [1,4,9], 'rs', label='line 2')
plt.axis([0, 4, 0, 10])
plt.<strong>xlabel</strong>('data x')
plt.ylabel('target y')
plt.<strong>title</strong>('test plot')
plt.<strong>legend()</strong>
加入网格:
plt.grid()
plt.legend(['3','4','5'], loc='upper right')
plt.show()
上面全部的格式都能够通过关键词来控制(格式,即參数kwargs):
plot(x, y, color='green', linestyle='dashed', marker='o', markerfacecolor='blue', markersize=12).
The kwargs are Line2D properties:
Property | Description |
---|---|
agg_filter | unknown |
alpha | float (0.0 transparent through 1.0 opaque) |
animated | [True | False] |
antialiased or aa |
[True | False] |
axes | an Axes instance |
clip_box | a matplotlib.transforms.Bbox instance |
clip_on | [True | False] |
clip_path | [ (Path, Transform) | Patch | None ] |
color or c |
any matplotlib color |
contains | a callable function |
dash_capstyle | [‘butt’ | ‘round’ | ‘projecting’] |
dash_joinstyle | [‘miter’ | ‘round’ | ‘bevel’] |
dashes | sequence of on/off ink in points |
drawstyle | [‘default’ | ‘steps’ | ‘steps-pre’ | ‘steps-mid’ | ‘steps-post’] |
figure | a matplotlib.figure.Figure instance |
fillstyle | [‘full’ | ‘left’ | ‘right’ | ‘bottom’ | ‘top’ | ‘none’] |
gid | an id string |
label | string or anything printable with ‘%s’ conversion. |
linestyle or ls |
['-' | '--' | '-.' | ':' | 'None' | ' ' | ''] |
linewidth or lw |
float value in points |
lod | [True | False] |
marker | A valid marker style |
markeredgecolor or mec |
any matplotlib color |
markeredgewidth or mew |
float value in points |
markerfacecolor or mfc |
any matplotlib color |
markerfacecoloralt or mfcalt |
any matplotlib color |
markersize or ms |
float |
markevery | [None | int | length-2 tuple of int | slice | list/array of int | float | length-2 tuple of float] |
path_effects | unknown |
picker | float distance in points or callable pick function fn(artist, event) |
pickradius | float distance in points |
rasterized | [True | False | None] |
sketch_params | unknown |
snap | unknown |
solid_capstyle | [‘butt’ | ‘round’ | ‘projecting’] |
solid_joinstyle | [‘miter’ | ‘round’ | ‘bevel’] |
transform | a matplotlib.transforms.Transform instance |
url | a url string |
visible | [True | False] |
xdata | 1D array |
ydata | 1D array |
zorder | any number |
2、matplotlib.pyplot.scatter(x, y, s=20, c=u'b', marker=u'o', cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None,verts=None, hold=None, **kwargs)散点图:
本质上和plot没甚差别。但要注意:
1)不能同一时候画多个曲线,plt.scatter(x1, y1, c='b', marker='o', x2, y2, c='r', marker='^', s=5)不合法。
2)color、marker等不能同一时候作为一个參数,plt.scatter(x1, y1, 'bo', s=5)不合法。
3)给个样例:
plt.scatter(x1, y1, c='b', marker='o', s=5)
4)我们看到,scatter会自己主动在坐标的头尾加上“延长”的部分,但plot假设不指定axis,则不会延长。
5)为了同一时候在一个图上画多条曲线。能够使用holdkeyword:
(When hold is True,
subsequent plot commands will be added to the current axes. When hold is False,
the current axes and figure will be cleared on the next plot command.)
plt.scatter(x1, y1, s=10, c='b', marker='o', label='test plot 1')
plt.<strong>hold(True)</strong>
plt.scatter(x2, y2, s=5, c='r', marker='^', label='test plot 2')
plt.legend()
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
假设不使用hold,效果例如以下:
plt.scatter(x1, y1, s=10, c='b', marker='o', label='test plot 1')
plt.hold(<strong>False)</strong>
plt.scatter(x2, y2, s=5, c='r', marker='^', label='test plot 2')
plt.legend()
待续。。。。
scikit-learn:matplotlib.pyplot经常使用绘图功能总结(1)的更多相关文章
- 在绘图的时候import matplotlib.pyplot as plt报错:ImportError: No module named '_tkinter', please install the python-tk package
在绘图的时候import matplotlib.pyplot as plt报错:ImportError: No module named '_tkinter', please install the ...
- matplotlib.pyplot 绘图详解 matplotlib 安装
apt-get install python-matplotlib 转载自: http://www.cnblogs.com/qianlifeng/archive/2012/02/13/2350086. ...
- 服务器上使用matplotlib.pyplot绘图
在linux服务器端执行python脚本,有时候需要画图,但是linux没有GUI界面,因此需要在导入matplotlib.pyplot库之前先执行 import matplotlib as mpl ...
- (原创)(四)机器学习笔记之Scikit Learn的Logistic回归初探
目录 5.3 使用LogisticRegressionCV进行正则化的 Logistic Regression 参数调优 一.Scikit Learn中有关logistics回归函数的介绍 1. 交叉 ...
- Scikit Learn: 在python中机器学习
转自:http://my.oschina.net/u/175377/blog/84420#OSC_h2_23 Scikit Learn: 在python中机器学习 Warning 警告:有些没能理解的 ...
- 利用cv与matplotlib.pyplot读图片与显示图片
import matplotlib.pyplot as pltimport cv2 as cva=cv.imread('learn.jpg')cv.imshow('learn',a)fig=plt.f ...
- 如何美化 Matplotlib 的工具栏和绘图风格
前言 matplotlib 功能十分强大,就是工具栏丑了点.忍了一个学期之后,还是决定自己动手,魔改一波 matplotlib 的工具栏样式.同时给大家分享一下自己按照 MATLAB 写的 matpl ...
- (原创)(三)机器学习笔记之Scikit Learn的线性回归模型初探
一.Scikit Learn中使用estimator三部曲 1. 构造estimator 2. 训练模型:fit 3. 利用模型进行预测:predict 二.模型评价 模型训练好后,度量模型拟合效果的 ...
- 数据分析之matplotlib.pyplot模块
首先都得导模块. import numpy as np import pandas as pd import matplotlib.pyplot as plt from pandas import S ...
随机推荐
- MySql 1248 - Every derived table must have its own alias
执行一个sql语句,报错:1248 - Every derived table must have its own alias 提示说每一个衍生出来的表,必须要有自己的别名 执行子查询的时候,外层查询 ...
- UVM基础之-------uvm factory机制override<博>
override功能是UVM中一个比较重要的功能,这个功能也是在factory里面实现的,我们会在env或者具体的case中使用override功能. class case_x extends bas ...
- 【PostgreSQL-9.6.3】LOG: unrecognized configuration parameter "dynamic_shared_memory_type"
报错如下: 输入如下命令启动PG数据库时,报错: [postgres@drz ~]$ pg_ctl -D /opt/postgresql/data/ start server starting FAT ...
- QS之shell script
1 Invoke Mdoelsim In order to open Modelsim automatically, it is better to use a shell script to inv ...
- 搭建FileZilla
FileZilla是C/S架构的,有服务端和客户端 客户端下载地址https://www.filezilla.cn/download/client 安装,一般就下一步下一步了. 服务端下载:https ...
- 梦想CAD控件COM接口自定义命令
在CAD软件操作中,为方便使用者,使用自定义命令发出命令,完成CAD绘图,修改,保存等操作.点击此处下载演示实例. _DMxDrawX::RegistUserCustomCommand 向CAD控件注 ...
- Microsoft SQL Server Transact-SQL
Microsoft SQL Server Transact-SQL 1.SQL 1.1数据定义语言(DDL) create 创建数据库或数据库对象:alter 修改数据库或数据库对象:drop 删除数 ...
- Compute和Linq的Field使用
目录: Compute的使用 Field的使用 1.Compute 案例: private void ComputeBySalesSalesID(DataSet dataSet) { // Presu ...
- C++11 Thread多线程的学习心得与问题
C++11 ,封装了thread的多线程的类,这样对多线程的使用更加方便. 多线程的原理我不加赘述,可以参看操作系统等参考书. 多线程代码可以最大化利用计算机性能资源,提高代码的运行效率,是常用优化方 ...
- 04StringBuffer相关知识、Arrays类、类型互换、正则、Date相关
04StringBuffer相关知识.Arrays类.类型互换.正则.Date相关-2018.7.12 1.StringBuffer A:StringBuffer的构造方法: public Strin ...