压缩刻度线不允许更改其属性

时间:2015-06-20 14:36:14

标签: python matplotlib python-3.4

当我偶然发现一个奇怪的结果时,我试图减少我的代码占用空间以使其更具可读性。如果我运行以下代码:

$scope.menuClick = function(linkTitle) {
    var linkText = angular.element(linkTitle).data('title');
    console.log(linkText); 
};

我得到以下输出:

enter image description here

但是,当我尝试使用以下内容压缩此代码以减少代码量时:

y1 = np.linspace(1,1000)
y2 = np.linspace(10,1)

c = ["b","g"]
fig, ax = plt.subplots()

ax.plot(y1, c[0])
ax2 = ax.twinx()
ax2.plot(y2, c[1])

for tl in ax.yaxis.get_ticklines():
    tl.set_color(c[0])

for ts in ax.yaxis.get_ticklabels():
    ts.set_color(c[0])

enter image description here

所有的标记标记都会发生变化,但只有一些标记线(不变的标记线标记为红色)。是否有一些原因可以解释为什么压缩标记导致只有部分变化?

1 个答案:

答案 0 :(得分:1)

我猜,ax.yaxis.get_ticklines()的数量是ax.yaxis.get_ticklabels()的两倍,所以zip只是在将它们全部绘制之前就停止了,而单个循环则很好。

zip中解释了INSERT的这种行为。