Python修改柱状图边缘柱子与图边界的距离 - 疯狂学习GIS
source link: https://www.cnblogs.com/fkxxgis/p/17097591.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Python修改柱状图边缘柱子与图边界的距离
本文介绍基于Python中matplotlib.pyplot
模块,修改柱状图、条形图最两侧的柱子与图像边缘之间距离的方法。
最近,绘制了一个水平的柱状图,但是发现图的上、下边距(不是柱子与柱子相互之间的间距,而是最上方与最下方柱子各自与图边缘的距离)相对较大,非常影响美观。同时需要说明的是,本文这里的柱状图纵坐标变量是代表变量名称的不同的字符串,而不是简单的数据范围,如下图所示:
图下方则是这个样子:
可以看到,整体感觉图的边距太大,非常不美观;因此,需要对其加以调整。
经过不断地探索与尝试,发现调整所需代码其实非常简单,仅仅需要两行;但这个代码需要借助Python中matplotlib.pyplot
这一模块,大家如果没有安装的话需要提前安装一下这个库。
y_num=np.arange(len(train_X_column_name))
plt.ylim(min(y_num)-1,max(y_num)+1)
其中,train_X_column_name
是y轴变量,也就是不同变量的名称字符串组成的列表,其每一个元素都是一个字符串。我们通过求len()
出列表长度,进而获取一个从0开始到列表长度为止的范围;随后通过ylim
限定纵坐标的最大、最小值,亦即各空出一个柱子的宽度。
得到修改后的图边距如下,可以看到,修改后的结果就非常美观了。
图下方则是这个样子:
这样子看上去,整个柱状图的边距比较符合我们的审美,整个图看起来也非常紧凑。
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK