资讯专栏INFORMATION COLUMN

PandasMatplotlib保存图型时纵坐标标识过长造成显示不全问题解决

89542767 / 533人阅读

  在使用matplotlib做图得时候,有时候会碰到绘图时显示不全和图片保存时不完美的难题,本文主要是为大家介绍了有关PandasMatplotlib保存图型时纵坐标标识过长造成显示不全问题解决方式,需用的小伙伴可以参考一下。


  序言


  这篇blog主要是处理在使用pandas制作图象并储存时,因为标识过长,造成纵坐标上标签显示不全问题。刚遇到困难的时候修改了一下下图片尺寸,然而并没有卵用,因此就查找了下难题,发觉没解决pandad的。查看无奈之下,检查了一下下官方文档,领悟,那不就是是matplotlib嘛,换了关键词再查看,果真,便是。因此这篇也适用于处理matplotlib制作图象时发生的这种情况。


  #部分代码


  df_sparsity=distiller.weights_sparsity_summary(resnet20)
  df_sparsity_tmp=df_sparsity[['NNZ(dense)','NNZ(sparse)']]
  ax=df_sparsity_tmp.iloc[0:-1].plot(kind='bar',figsize=[30,10],title="Sparse vs.Densen(element-wise)")
  ax.set_xticklabels(df_sparsity.Name,rotation=90)
  fig=ax.get_figure()
  fig.savefig('output.png')


  1.问题描述


  使用pandas的DataFrame存储数据并绘制图像,横坐标轴的标签是ResNet20的各个layer的名字,像module.layer1.0.conv1.weight这样,由于太长,导致绘制出来的图像是这样的:

01.png

  坐标轴的标签没有显示全,于是就尝试改变图像的大小:


  #改变下高度
  ax=df_sparsity_tmp.iloc[0:-1].plot(kind='bar',figsize=[30,50],title="Sparse vs.Densen(element-wise)")

  于是图像就变成了下面这样,虽然有效果,但图片被拉长,依旧不美观:

02.png

  2.问题原因


  既然调整绘制图像尺寸之后绘制出来的图片依旧不符合预期,那就只能看看官方的文档了----pandas.DataFrame.plot(),看看是不是还有其他参数,能够使图像的大小及位置不变,坐标轴的绘制空间适当调整。然后就发现了这个:

03.png

  函数返回了一个matplotlib.axes.Axes,既然是matlitplot,那问题就很容易解决了,matplotlib老搞这样的事。查看一下matplotlib的文档----matplotlib.pyplot.savefig(),可以看到:

04.png

  默认情况下,仅保存图形给定的部分,如果设置为tight,将尝试保存更紧致的图形。


  4.解决方法


  在保存图形是加入bbox_inches参数:


  #设置tight bbox
  fig.savefig('output.png',bbox_inches='tight')


  再次保存图形,此时的就很ok了:

05.png

  结束语


  到此为止,这篇文章就给大家介绍到这里了,希望可以给大家带来帮助。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/128705.html

相关文章

  • pythonmatplotlib绘图时坐标重合显示不全和图片保存时不完美的问题改进

      近期工作中过程中遇到了matplotlib保存图片纵坐标不完美的难题,因此本文关键为大家介绍了关于pythonmatplotlib绘图时纵坐标重合显示不全和图片保存的时候不完善解决问题的方法方式,需要的小伙伴可以做个参考  难题  在使用matplotlib做图时,有时候会碰到绘图时纵坐标重合,显示不全和图片保存时不完美的难题。如下所示:  解决方案  画图时重叠或者显示不全的问题  画图时加...

    89542767 评论0 收藏0
  • python大大数据可视化matplotlib制做复式统计表案例

      文中关键给大家介绍了python大大数据可视化matplotlib制做复式统计表的案例详细说明,感兴趣的小伙伴可以参考借鉴一下,希望可以有一定的帮助,祝愿大家多多的发展,尽早涨薪  plt.plot()函数公式各主要参数分析  plt.plot()函数的作用是制做复式统计表,它主要参数有许多,常用的函数主要参数如下所示:  plt.plot(x,y,color,linestyle,linewi...

    89542767 评论0 收藏0
  • 解决ScrollView嵌套RecyclerView的显示及滑动问题

    摘要:项目中时常需要实现在中嵌入一个或多个。基于此,在这种情况下我们应当尽量避免采用嵌套的布局方式 项目中时常需要实现在ScrollView中嵌入一个或多个RecyclerView。这一做法通常会导致如下几个问题 页面滑动卡顿 ScrollView高度显示不正常 RecyclerView内容显示不全 本文将利用多种方式分别解决上述问题 滑动卡顿解决方案 若只存在滑动卡顿这一问题,可以采用...

    wenzi 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<