如何在Matplotlib的绘图中绘制轴线?

时间:2015-09-16 10:32:54

标签: python matplotlib

当我使用Matplotlib绘制数据时,默认情况下会将轴绘制为框图框。让我们说我在轴限-2 < x < 2-2 < y < 2内绘制数据,但我想通过原点在此绘图区域内绘制轴线,最好沿这些轴绘制刻度和刻度标签线 - 不是沿着外框。

2 个答案:

答案 0 :(得分:6)

spines example(旧链接)/ spine placement demo(新链接)中详细记录了这一点。

您将关闭右侧和顶部脊柱(例如spines['left'].set_position('zero')),并将左侧和右侧脊柱移动到零位置(例如import numpy as np import matplotlib.pyplot as plt fig = plt.figure() x = np.linspace(-np.pi, np.pi, 100) y = 2*np.sin(x) ax = fig.add_subplot(111) ax.set_title('zeroed spines') ax.plot(x, y) ax.spines['left'].set_position('zero') ax.spines['right'].set_color('none') ax.spines['bottom'].set_position('zero') ax.spines['top'].set_color('none') # remove the ticks from the top and right edges ax.xaxis.set_ticks_position('bottom') ax.yaxis.set_ticks_position('left') )。

...
SPLimitedWebPartManager spLimitedWebPartManager = spFile.GetLimitedWebPartManager(PersonalizationScope.Shared);
var gettingStartedWebPart = new GettingStartedWebPart();
....
spLimitedWebPartManager.AddWebPart(gettingStartedWebPart, "wpz", 0);

enter image description here

答案 1 :(得分:3)

我至少可以给出半完整的答案。 是的,您可以轻松绘制轴线。它就像

一样简单
plt.axvline(0)
plt.axhline(0)

原始轴将保留,但可以使用plt.axis('off')关闭。 它也不会给你任何刻度线。