- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
出于一个奇怪的原因,我找不到在 Python 的 matplotlibrc 文件中指定 spines 配置的方法。关于如何使 matplotlib 默认不绘制上脊和右脊有什么想法吗?
(来源:sourceforge.net)
更多关于 matplotlib 中脊柱的信息是 here
谢谢
最佳答案
为了隐藏子图的右侧和顶部书脊,您需要将相关书脊的颜色设置为'none'
,并将刻度位置设置为 'left'
用于 xtick,'bottom'
用于 ytick(为了隐藏刻度线和书脊)。
不幸的是,目前这些都不能通过 matplotlibrc
访问。 matplotlibrc
中指定的参数经过验证,然后存储在名为 rcParams
的字典中。然后由各个模块检查此字典中的键,其值将作为它们的默认值。如果他们不检查其中一个选项,则该选项不能通过 rc
文件更改。
由于 rc
系统的性质以及书脊的编写方式,更改代码以允许这样做并不简单:
Spines 当前通过用于定义轴颜色的相同 rc
参数获得它们的颜色;你不能将它设置为 'none'
而不隐藏你所有的轴图。它们也不知道它们是 top
、right
、left
还是 bottom
— 实际上只有四个单独的书脊存储在字典中。单独的 spine 对象不知道它们构成了图的哪一侧,因此您不能只添加新的 rc
参数并在 spine 初始化期间分配适当的参数。
self.set_edgecolor( rcParams['axes.edgecolor'] )
(./matplotlib/lib/matplotlib/spines.py,__init__(),第 54 行)
如果您有大量现有代码,手动向每个轴参数添加轴参数会过于繁琐,您可以交替使用辅助函数来遍历所有轴对象并为您设置值。
这是一个例子:
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.pyplot import show
# Set up a default, sample figure.
fig = plt.figure()
x = np.linspace(-np.pi,np.pi,100)
y = 2*np.sin(x)
ax = fig.add_subplot(1,2,2)
ax.plot(x,y)
ax.set_title('Normal Spines')
def hide_spines():
"""Hides the top and rightmost axis spines from view for all active
figures and their respective axes."""
# Retrieve a list of all current figures.
figures = [x for x in matplotlib._pylab_helpers.Gcf.get_all_fig_managers()]
for figure in figures:
# Get all Axis instances related to the figure.
for ax in figure.canvas.figure.get_axes():
# Disable spines.
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
# Disable ticks.
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')
hide_spines()
show()
只需在show()
之前调用hide_spines()
,它就会将它们隐藏在show()
显示的所有图形中。除了花时间修补 matplotlib
并添加 rc
对所需选项的支持之外,我想不出更简单的方法来更改大量图形。
关于python - 在 matplotlibrc 中设置 spine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3439344/
我已经尝试了几天 Spinejs 库,我在 Spinejs.com 上有文档,但直到现在,我仍然不知道 Spine 路由到底是如何工作的。从文档中,我知道如何创建新路由并将它们添加到 Spine 路由
我已经创建了一个 Spine Controller ,我想从它的一个方法中触发一个自定义事件“创建”。 然后我想要另一个 Spine Controller 来监听那个事件。 这怎么可能使用 Spine
如果 ($(this).val() == "Spine") 但如果 ($(this).val() == "Spine"||"Brian") 然后选择菜单关闭然后在选择 "optionbodyRegio
我在保存创建的模型记录时遇到问题表单的数据。使用从表单中获取数据 .fromForm(form)有效,因为它包含所有值。但是,当我保存记录时,它只保存记录的cid,没有别的。 这是记录时记录的样子:
我正在尝试使用 d3(使用 Spine.app 生成)制作一个新的 spine javascript 应用程序。我尝试了以下方法: 编辑 slug.json,并将“d3”添加到依赖项数组。 运行“np
我需要在 spine.js 中支持集合。我知道 spine.js 目前不支持这个 - 不确定它是否会支持。 是否有人添加了此功能或知道实现它的最佳方法? 最佳答案 此功能是内置的。 集合只是模型中的类
我一直在整个 StackOverflow 上搜索,但我找不到这个问题的答案。 Spine(MVC Javascript 框架)中类的用途是什么? http://maccman.github.com/s
是否可以从spine js模型的实例中获取模型名称?例如,假设我有以下对象: var Client = Spine.Model.sub(); Client.configure('Client', 'i
所以我一直在看Spine.js最近作为 Backbone 的替代品。但是,在文档中指出: Works in all major browsers (Chrome, Safari, Firefox, I
我刚刚了解 Backbone.js 和 Spine.js 等 JavaScript 框架如何在更新 View 等方面处理数据模型的客户端状态。我希望使用 Backbone 构建 Web 应用程序将其模
如果我有一个“专辑”列表,并且单击其中一个,我会导航到另一个 View (/#/album/:id),该 View 由名为 SingleAlbum 的 Controller 控制。它正确获取数据,但我
我最近一直在研究相当多的 JavaScript 框架的 MVC,我非常喜欢 Spine.js 的整体感觉以及它使用 CoffeeScript 的事实。也就是说,我现阶段主要关心的是我需要能够将 MVC
我有一个情节: 但我希望刻度线位于零轴(就像在正常图形中一样...)。我看过this example还有this example但我有问题: 如果我尝试: import matplotlib.pypl
我需要实现现有的 WSDL。我尝试继承我的复杂类型类。但如果派生类实现 xml 属性,我会收到错误。如果派生类未实现 xml 属性,则不会出现错误。 我是不是做错了什么?(spyne版本'2.12.1
出于一个奇怪的原因,我找不到在 Python 的 matplotlibrc 文件中指定 spines 配置的方法。关于如何使 matplotlib 默认不绘制上脊和右脊有什么想法吗? (来源:sour
iOS 文档说我们可以一次显示一个或两个页面,具体取决于书脊位置或位置以及双面状态... 但是,我无法理解“UIPageViewController 中的 spine 到底是什么?” 最佳答案 它仅在
正如我在 Spine.js 源代码中看到的,Model.each() 函数按照 ID 的顺序返回模型的记录。在排序很重要的场景中,这是完全不可靠的:长人员列表等。 您能否提出一种保持原始记录排序的方法
我是 spine 的新手,现在我正在尝试设置我的第一个小应用程序。 我有一个 Posts Controller,其中定义了 2 条路线:一个显示特定帖子,一个显示所有帖子 class Posts ex
是否可以在同一个 Spine.js 中有两个 Controller :Apartments 和 Map。有没有办法在选择公寓时调用让 map 做某事? # Apartments class Show
我正在将 spine javascript 库用于独立的 javascript 应用程序。我大量使用发布者/订阅者模型并将代理回调绑定(bind)到 spine 模型。当我尝试解除绑定(bind)代理
我是一名优秀的程序员,十分优秀!