当前位置: 首页 > 面试题库 >

.matplotlibrc和默认选项

隗俊誉
2023-03-14
问题内容

我正在研究适用于Python的matplotlib库。我开始理解它的一些基本复杂性,因为pylab和pyplot之间的区别,并且我正在尝试复制和修改图库中的一些示例。

我仍然不清楚的一件事是配置文件matplotlibrc的实际作用。

目前,我使用Windows 7下的WinPython 3.3.5.0
64位分发版。.matplotlibrc文件位于WinPython-64bit-3.3.5.0 \ python-3.3.5.amd64 \ lib \
site-packages \ matplotlib \ mpl-data \ matplotlibrc

我想开始更改一些选项作为默认字体,因此我打开了它,发现除一行(后端:TkAgg)外的所有行都已注释。

所以我想问一下matplotlib从哪里获取所有默认值(例如fonts属性)。库中是否有另一个文件,或者它们是否以某种方式在库中“硬编码”?谢谢。


问题答案:

matplotlib\__init__.py站点软件包目录中的文档和代码来看,您可以看到该matplotlibrc文件的搜索路径是:

Search order:

 * current working dir                                                                                                                    
 * environ var MATPLOTLIBRC                                                                                                               
 * HOME/.matplotlib/matplotlibrc                                                                                                          
 * MATPLOTLIBDATA/matplotlibrc

如果在这些路径中找不到文件,则会引发警告:

warnings.warn('Could not find matplotlibrc; using defaults')

matplotlibrc文件只是对现有默认参数的更新。这些可以使用以下命令找到:

from matplotlib.rcsetup import defaultParams

(这显然在中matplotlib/rcsetup.py

在该__init__.py文件中,matplotlib循环浏览此字典并定义将用于所有脚本和代码的默认rc参数:

rcParamsDefault = RcParams([ (key, default) for key, (default, converter) in \
                    defaultParams.iteritems() ])

因此,如果您想知道默认值,请查看:

In [4]: import matplotlib

In [5]: matplotlib.rcParamsDefault
Out[5]: 
{'agg.path.chunksize': 0,
 'animation.bitrate': -1,
 'animation.codec': 'mpeg4',
 'animation.ffmpeg_args': '',
 'animation.ffmpeg_path': 'ffmpeg',
 'animation.frame_format': 'png',
 'animation.mencoder_args': '',
 'animation.mencoder_path': 'mencoder',
 'animation.writer': 'ffmpeg',
 ...


 类似资料:
  • 问题内容: 我有一个具有日期时间字段的模型: 当我在内置的django admin中检查该应用程序时,还会附加时间,因此,如果你尝试保存它,则会返回错误。如何设置默认的日期呢?(也不起作用) 问题答案: 这就是为什么你应该始终导入基本模块:而不是该模块中的类的原因f。 你犯的另一个错误是使用实际调用默认的函数。这意味着所有模型都将在首次定义类时获得日期-因此,如果你的服务器在不重新启动Apache

  • 问题内容: 我有一个很奇怪的要求,其中要求我默认在HTML的下拉菜单中没有选择任何选项。然而, 我不能用这个 因为,为此,我将必须进行验证以处理第一个选项。有人可以在没有将第一个选项作为select标签的一部分的情况下帮助我实现此目标吗? 问题答案: 也许这会有所帮助 将默认显示。但是,如果您选择一个选项,则将无法再次选择它。 您也可以通过添加一个空白来隐藏它 因此它将不再显示在列表中。 选项2

  • 我需要一些帮助,我不知道如何解决这个问题。 当我设置适配器时,我需要默认选择几个复选框,但我不能这样做。为什么?我认为问题是CheckableRelativeLayout。我使用RelativeLayout的这个变体,因为我需要单击行并选择复选框。 当我使用RelativeLayout的这个变体时,列表中的所有复选框都未选中。如果您在最后看到我的日志,当选中复选框时会触发事件“onCheckedC

  • 我的WPF应用程序中有一个ComboBox,我在其中显示项目列表。大多数情况下,第一个项目是项目资源列表中的正确选择,只有在个人请求时,才能更改项目。现在,“我的”组合框加载列表,但从不显示所选项目的第一个项目。有人能帮我吗。这是我的代码。 XAML: 代码隐藏: 我在 itemsSource 中有值,已选择的 itme 也有一个值,但永远不会显示在屏幕上。 感谢任何帮助。

  • 如何设置ng选项的默认值。。。 以下是我的ng选项指令:

  • 问题内容: 我只是从angularjs开始,并且正在努力将一些旧的JQuery插件转换为Angular指令。我想为我的(元素)指令定义一组默认选项,可以通过在属性中指定选项值来覆盖这些默认选项。 我一直在寻找其他人这样做的方式,并且在angular-ui库中ui.bootstrap.pagination似乎做了类似的事情。 首先,所有默认选项都在一个常量对象中定义: 然后,将实用程序功能附加到指令