开发者学堂课程【Python 常用数据科学库:子图布局】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/546/detail/7509
子图布局
画子图有另外一种更为简单的方法。首先将工具导入之后,将数据导入,按照之前的方法先画一个主图,将指标值拿到手之后。指定 Color,此时 AX1完成。再继续画AX2,直接用导入进去的工具画 AX2。再继续指定参数,例如宽度高度。再在其中加入一个派图。制作拍图时就是2个会,在一起就有2个缝隙,如果有多个块,就有多个缝隙,所以先导入缝隙,然后传入数据,数据就是百分比。然后需要指定名字,还需要做百分数。再加入 explored 即可。执行代码之后发现代码编译错误。更改代码,总代码如下:
arrivals_percent = [36.9, 30. 4, 13. 8, 4. 4, 4. 0, 3. 6, 2.9,2.6, 1.5]
fig. ax1 =plt.subplots(figsize=(20,12))
ax1. bar(range(10),top10_arrivals_values,color='blue')
ax2 = inset_axes(axl,width =6,height = 6.loc = 5)
explode = (0.08, 0.08, 0.05, 0.05,0.05,0.05,0.05,0.05,0.05)
ax2.pie(arrivals_percent,labpls=arrivals_countries,autopct='1.1f',explode=explode)
执行以上代码之后出现如下图形:
也就是大图当中嵌套一个小图的绘画方法。这种方法主要就是用导入进去的工具来进行子图的绘画。在图中发现具有几个刻度,也可以将这几个刻度去掉,只需要加入代码:
for spine in axl.spines.values():
spine.set_visible (False)
需要为图表进行注释,获取10个注释及名字。如果只执行获取注释和名字的代码,代码的位置,就会出现一些问题。所以对代码进行更改,加入以下代码:
plt.xticks (range(10),top10_arrivals_countries,fontsize=18)
需要注意的是对哪个图进行注释操作就加入在哪个图的代码之后。加完名字之后,还可以进行字体更改。更改代码如下:patches,texts,autotexts=ax2.pie(arrivals_percent,labels=arrivals_countries,autopct='1.lf%',explode=expl
for text in textsfautotexts:text. set_fontsize(16)
for spine in axl.spines.values():
spine.set_visible(False)
主要运用到的就是画子图的一个工具。这个工具当中可以将任意的指标都画出。现在发现一个条形图上面没有指标,那么也可以在条形图中加入指标,加入代码:
def autolabel(rects):for rect in rects:
height =rect.get_heightO)
axl. text(rect. get_x(O + rect. get_width(/2., 1.02*height.
"(:.)".format(float(height)).
ha='center', va='botton',fontsize=18)
自动生成上面的东西就是指定了长度。长度就相当于是刻度在刻度上进行 test 的标注,就相当于是在条形图的最上面加入了一个值。写了这样一个函数之后,需要具体运用这个函数。在最后加上标注,当前需要传进来一些指标,再把传进来的指标付给他即可。将 bar 图赋值成一个变量在把变量传进来即可。以上就是基本标注的做法.
也可以指定一些特殊的形状,导入需要用到的库。直接将需要用到的东西复制到代码中,执行之后就可以画出一个小猫:
也就是说,通过自己定义图案,例如 mouth Left 的一些值,就表示左嘴角的值,指定了一个圆,他从多少度到多少度进行截取。所以说,此处也有一些自定义的图案进行截取,就可以进行拼接。一个小块之中有这些图案,也可以直接用这些图案来做一些事情。实现一些功能。以上就是子图的布局以及嵌套的方法。