Matplotlib AGG后端轴标签显示问题

时间:2018-04-17 20:03:03

标签: python matplotlib

下午,

在非屏幕“web-app”上使用AGG后端时,MatplotLib提供了不可读的轴标签,带屏幕的设备(Windows笔记本电脑)上的相同代码会产生预期效果。

使用此处指定的backend.use('agg'): https://matplotlib.org/faq/howto_faq.html#howto-webapp

相同的代码产生两个不同的输出:

  1. 意外 - 因为它出现在我的Ubuntu Django Webapp上。在没有应用适当间距的情况下,轴明显地相互渲染文本。数据似乎以不同方式组织。情节完全不同。
  2. Ubuntu 16.04 - Without Display

    1. 预期 - 在Windows 10计算机(笔记本电脑)上显示的单一显示。轴显示正确的间距,没有文本的混乱,如预期的图形/图表。
    2. Windows 10 - With Display

      相关代码(整个代码约为4kb,上图的绘图部分在这里)

      import matplotlib
      matplotlib.use('agg')
      import matplotlib.pyplot as plt
      
      #...other code that processes data and whatnot...
      
      #Active Sessions Collasped Graph
      axes = plt.gca()
      for dp in device.sessionStats:
          plt.plot([x.curTime for x in dp.sessions if x.name == "active"],[x.value for x in dp.sessions if x.name == "active"],label=dp.dataplane+" Active Sessions")
      handles, labels = axes.get_legend_handles_labels()
      axes.legend()
      plt.gcf().autofmt_xdate()
      plt.savefig(graphDirectory+'dpActiveSessionsGraph.png', bbox_inches='tight')
      plt.close()
      

0 个答案:

没有答案