为什么 Matplotlib GUI 在 IDLE 和 Spyder 中发生变化?

Why Matplotlib GUI changes in IDLE and Spyder?

我使用完全相同的代码和环境,但 IDLE 和 Spyder 中的 Matplotlib 图形具有不同的 GUI(图形选项)。为什么会这样? matplotlib的版本是2.2.2,Python是3.6.8,Spyder是3.3.1.

附上图片,请参考。我标记的区域有不同的选项。

Matplotlib graph in IDLE

Matplotlib graph in Spyder

我实际上想在 ArcGIS 上使用图表,但它与 IDLE 一起出现。我想使用 Spyder 中的那个,因为它有更多选项。

您使用不同的后端。在您的情况下,IDLE 中的 GUI 使用 "TkAgg",而 Spyder 中的 GUI 使用 "Qt5Agg"Backends 用户指南列出了 3 个设置后端的选项。与您相关的可能是

  1. 通过 matplotlibrc 文件中的 backend 参数设置后端(参见 Customizing Matplotlib with style sheets and rcParams):

    backend : Qt5Agg   # use Qt5Agg with antigrain (agg) rendering
    
  2. 在代码中设置后端

    import matplotlib
    matplotlib.use('Qt5Agg') 
    

    在导入 pyplot 之前,这些需要位于脚本的开头。

在 Spyder 中,您可以 select 通过 Tools/Preferences/IPython Console/Graphics/Graphics Backend 选项。