您的位置:首页 > 编程语言 > Python开发

python机器学习库 :matplotlib

2015-08-07 20:21 447 查看

初级绘图





Figure( figsize=(8,6) , dpi=80)

表示设置一个8 * 6 点的图 , 每一点的像素是80.

Subplot(参数1 , 参数2 , 参数3)

其中前两个参数的乘积表示要把画布切割多少块。

最后一个参数表示在哪块上显示图片。

如把代码中第5行改为

Subplot( 2,2,1)

图像显示:



Subplot(2,2,4)

图像显示:



保存图片

Savefig(路径+图片名 , dpi=像素)

Xlim (参数1 , 参数2)

Ylim(参数1 , 参数2)

表示x轴 , y轴的下限和上限

Plot 绘制曲线

Color 设置颜色

Linewidth 设置曲线的粗细

Linestyle 设置曲线的样式

线属性:

颜色(color 简写为 c):

• 蓝色: ‘b’ (blue)

• 绿色: ‘g’ (green)

• 红色: ‘r’ (red)

• 蓝绿色(墨绿色): ‘c’ (cyan)

• 红紫色(洋红): ‘m’ (magenta)

• 黄色: ‘y’ (yellow)

• 黑色: ‘k’ (black)

• 白色: ‘w’ (white)

• 灰度表示: e.g. 0.75 ([0,1]内任意浮点数)

• RGB表示法: e.g. ‘#2F4F4F’ 或 (0.18, 0.31, 0.31)

• 任意合法的html中的颜色表示: e.g. ‘red’, ‘darkslategray’

线型(linestyle 简写为 ls):

• 实线: ‘-’

• 虚线: ‘–’

• 虚点线: ‘-.’

• 点线: ‘:’

• 点: ‘.’

点型(标记marker):

• 像素: ‘,’

• 圆形: ‘o’

• 上三角: ‘^’

• 下三角: ‘v’

• 左三角: ‘<’

• 右三角: ‘>’

• 方形: ‘s’

• 加号: ‘+’

• 叉形: ‘x’

• 棱形: ‘D’

• 细棱形: ‘d’

• 三脚架朝下: ‘1’(就是丫)

• 三脚架朝上: ‘2’

• 三脚架朝左: ‘3’

• 三脚架朝右: ‘4’

• 六角形: ‘h’

• 旋转六角形: ‘H’

• 五角形: ‘p’

• 垂直线: ‘|’

• 水平线: ‘_’

• gnuplot 中的steps: ‘steps’ (只能用于kwarg中)

标记大小(markersize 简写为 ms):

• markersize: 实数

标记边缘宽度(markeredgewidth 简写为 mew):

• markeredgewidth:实数

标记边缘颜色(markeredgecolor 简写为 mec):

• markeredgecolor:颜色选项中的任意值

标记表面颜色(markerfacecolor 简写为 mfc):

• markerfacecolor:颜色选项中的任意值

透明度(alpha):

• alpha: [0,1]之间的浮点数

线宽(linewidth):

• linewidth: 实数

设置线条的粗细和颜色







用plot 中的linewidth 设置线条的粗细。

设置图片边界



有两种方法,其中下边的比较好(线段末到边框的距离)





设置记号

在正余弦函数中我们希望知道函数的

的值。

方法:



图和代码:





设置记号的标签

我们可以用pi 来代替 3.142。当我们设置记号时,也可以同时设置记号的标签,这里使用了LaTeX。

方法:







Xticks 和 yticks 第一个参数数组是记号,第二个参数数组是标签。

移动脊柱

坐标轴线和上面的记号一起形成脊柱(Spines),它记录了数据区域的范围。可以放在任意的位置,默认把四个脊柱放在图的四周。

每幅图有四个脊柱(分布于上下左右),为了让脊柱显示在图像中间,必须把两条脊柱(上和右)设置成无色,另外两条放到合适的位置(数据空间的0点)。

代码







添加图例



图像左上角小矩形就是图例

代码是:



在plot 划线命令中添加 ’键 – 值‘ 对

Legend 表示图例显示在哪里

一些特别的注释



在 2/3 pi 的位置给两条函数曲线加一个注释。首先,在函数图像位置上画一个点,然后,在横轴引一条垂线(虚线),写标签。

代码:



画垂直线和点:





其中scatter 是画点的命令。

精益求精

在记号标签添加一个白色的半透明底色





图像、子图、坐标轴和记号

到目前为止,我们都用隐式的方法来绘制图像和坐标轴。快速绘图中,这是很方便的。我们也可以显式地控制图像、子图、坐标轴。Matplotlib 中的「图像」指的是用户界面看到的整个窗口内容。在图像里面有所谓「子图」。子图的位置是由坐标网格确定的,而「坐标轴」却不受此限制,可以放在图像的任 意位置。我们已经隐式地使用过图像和子图:当我们调用 plot 函数的时候,matplotlib 调用 gca() 函数以及 gcf() 函数来获取当前的坐标轴和图像;如果无法获取图像,则会调用 figure() 函数来创建一个——严格地说,是用 subplot(1,1,1) 创建一个只有一个子图的图像。

图像

所谓「图像」就是 GUI 里以「Figure #」为标题的那些窗口。图像编号从 1 开始,与 MATLAB 的风格一致



在画图时一般使用默认值就可以,只有图像数量需要修改。

子图

你可以用子图来将图样(plot)放在均匀的坐标网格中。用 subplot 函数的时候,你需要指明网格的行列数量,以及你希望将图样放在哪一个网格区域中。



代码:



gridspec 的功能更强大,你也可以选择它来实现这个功能。



代码:



坐标轴

坐标轴和子图功能类似,不过它可以放在图像的任意位置。因此,如果你希望在一副图中绘制一个小图,就可以用这个功能。



代码:



Axes 接收一个数列 ,前两参数是坐标,后两个是子图的长,宽。

另一个例子:





记号

良好的记号是图像的重要组成部分。Matplotlib记号系统里的各个细节都是可以由用户个性化配置的。你可以用 Tick Locators 来指定在那些位置放置记号,用 Tick Formatters 来调整记号的样式。主要和次要的记号可以以不同的方式呈现。默认情况下,每一个次要的记号都是隐藏的,也就是说,默认情况下的次要记号列表是空的——NullLocator。

Tick Locators

下面有为不同需求设计的一些 Locators。



这些 Locators 都是 matplotlib.ticker.Locator 的子类,你可以据此定义自己的 Locator。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  机器学习 python