开发者学堂课程【Python 常用数据科学库:绘图细节设置1】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/546/detail/7504
绘图细节设置1
在 matplot 中,还存在一些关于轴的设置,轴指的是 X 轴和 Y 轴。在画图的时候有左边的,右边的,上面的,下面的一些东西。对于这些东西就要考虑将其保留还是删去。
X=range(10)
y=range(10)
然后把当前轴的对象调出:
fig=plt.gca()
plt.plot[x,y]
执行以上代码之后。出现以下图形:
现在上下左右都分别有轴,有这些轴之后,接下来就可以选择一些留下,选择一些不留下:
Fig,axes.get_xaxis().set_visible[False]
执行以上代码之后,x轴消失了。
Fig,axes.get_yaxis().set_visible[False]
执行以上代码之后,Y 轴消失了。也就是说不想让 X 轴或 Y 轴存在时,可以设置其可不可见。也可以单独让上面的和右边的消失:
X=np.random.normal(loc=0.0,scale=1.0,size=300)
指定宽度:
Width=0.5
从何处开始,从何处结束,其中的间隔就表示 bins。
Bins=np.arange(math.floor(x,min())-width.math.cell(x.max())+width).width)
Ax=plt.subplots(111)
在 spines 中需要控制什么就改什么。
Ax.spines[‘top’],set_visible(False)
Ax.spines[‘right], set_visible(False)
通过以上代码就将其设置为不可见了。
Plt.hist()相当于一个直方图
Plt.hist(x,alpha=0.5,bins=bins)
由于此时只有一个图,所以 sub plot不需要加 S。
总体代码如下:
Import math
X=np.random.normal(loc=0.0,scale=1.0,size=300)
Width=0.5
Bins=np.arange(math.floor(x,min())-width.math.cell(x.max())+width).width)
Ax=plt.subplot(111)
Ax.spines[‘top’],set_visible(False)
Ax.spines[‘right], set_visible(False)
Plt.hist(x,alpha=0.5,bins=bins)
设置轴线不可见之后出现了一个较为有趣的现象,虽然轴不可见,但是出现了一些刻度。也可以通过设置来将刻度隐藏。
Plt.tick_params(bottom=’off’,top=’off’,left=’off’)
总体代码如下:
Import math
X=np.random.normal(loc=0.0,scale=1.0,size=300)
Width=0.5
Bins=np.arange(math.floor(x,min())-width.math.cell(x.max())+width).width)
Ax=plt.subplot(111)
Ax.spines[‘top’],set_visible(False)
Ax.spines[‘right], set_visible(False)
Plt.tick_params(bottom=’off’,top=’off’,left=’off’)
Plt.hist(x,alpha=0.5,bins=bins)
通过以上代码将上左下的刻度都关闭了。但右边还没关闭,所以还需要加入right=’OFF’。也可以在图中加入网格:ply.grid()。可以根据自己的需要来选择是否加入网格刻度轴等。
在写X轴时,可能会出现X轴字会很长的情况:
X=range(10)
y=range(10)
labels=[‘tangyudi’for I range (10)]
fig.ax=plt.subplots()
plt.plot()
ax.set_xticklabels(labels)
以上代码执行之后出现错误,更改如下:
X=range(10)
y=range(10)
labels=[‘tangyudi’for I in range (10)]
fig.ax=plt.subplots()
plt.plot(x,y)
ax.set_xticklabels(labels)
图如下:
就需要在设置 X 轴时加上一些参数:ax.set_xticklabels(labels,rotation=90)
此时 X 轴上较长的坐标就竖着写了,其中90就表示写的角度。如果刻度对应的不好,就可以加上对齐参数:
ax.set_xticklabels(labels,rotation=90,horizontalalignment=‘right’)
旋转角度和对齐参数都可以自己指定。