我与数据科学 - [Today is Matplotlib] - [plt随用笔记]

在matplotlib上如何输出中文的一般步骤:

    mpl.rcParams['font.sans-serif'] = [u'SimHei']
    mpl.rcParams['axes.unicode_minus'] = False

设置colormap的一般写法:

cm_light = mpl.colors.ListedColormap(['#A0FFA0', '#FFA0A0', '#A0A0FF'])
cm_dark = mpl.colors.ListedColormap(['g', 'r', 'b'])

创建一个图形实例:

plt.figure(facecolor='w')

原函数:

def figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=Figure, clear=False, **kwargs)

num:如果此参数没有提供,则一个新的figure对象将被创建,同时增加figure的计数数值,此数值被保存在figure对象的一个数字属性当中。如果有此参数,且存在对应id的figure对象,则激活对于id的figure对象。如果对应id的figur对象不存在,则创建它并返回它。如果num的值是字符串,则将窗口标题设置为此字符串。

figsize:以英寸为单位的宽高

dpi:图形分辨率

facecolor:背景色

edgecolor:边框颜色

frameon:默认值True为绘制边框,如果为False则不绘制边框,可以理解为frame:on

clear:重建figure实例

为决策树画背景色:

plt.pcolormesh(x1, x2, y_show_hat, cmap=cm_light)  # 预测值的显示

其中x1, x2, y_show_hat维度要一样, y_show_hat中的类别数量要和cm_light数量一样

plt.scatter(x_test[:, 0], x_test[:, 1], c=y_test.ravel(), edgecolors='k', s=120, cmap=cm_dark, marker='*') 

画散点图

函数原型:

def scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, 
alpha=None, linewidths=None, verts=None, edgecolors=None, hold=None, data=None, **kwargs)

x,y都是数据点向量,长度必须相同

c为标记颜色,如果是RGB 三元数或颜色名称 -就使用相同的颜色绘制所有标记。 'red' 或 'r'红色,'black或k'表示黑色。如果散点图中有三个点,并且您希望这些颜色成为颜色图的索引,请以三元素列向量的形式指定 c。

marker为标记样式,都有'o'圆圈, '+'十字,'*'星号,'.'点,'s'方形, 'd'菱形,'p'五角星,'h'六角星,'<>^'上下左右方向键头

edgecolors:标记的轮廓颜色,和c类似,参数也相同

alpha为透明度,[0,1]0为透明,1为不透明

plt.plot(x,y,format_string,**kwargs) 

x轴数据,y轴数据,format_string控制曲线的格式字串 

format_string 由颜色字符,风格字符,和标记字符 

plt.plot(depth, err_list, 'ro-', lw=2)

函数表示红色线,圆圈标记数据点,实线相连 

subplot(numRows, numCols, plotNum)

表示分成rows行,cols列,按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域的编号为1,当前使用第plot个,如果numRows,numCols和plotNum这三个数都小于10的话,可以把它们缩写为一个整数,例如subplot(323)和subplot(3,2,3)是相同的。

matplotlin.pyplot.grid(b, which, axis, color, linestyle, linewidth, **kwargs)

绘制网格线

b : 布尔值。就是是否显示网格线的意思

axis : 取值为‘both’, ‘x’,‘y’,就是想绘制哪个方向的网格线

color : 设置网格线的颜色。或者直接用c来代替color也可以。

linestyle :也可以用ls来代替linestyle, 设置网格线的风格,是连续实线,虚线或者其它不同的线

linewidth : 设置网格线的宽度

猜你喜欢

转载自blog.csdn.net/weixin_43409627/article/details/84839521
今日推荐