难以理解matplotlib轴

时间:2018-05-13 10:12:11

标签: python matplotlib axes

我跟踪数据 年 阵列([1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,        1981年,1982年,1983年,1984年,1985年,1986年,1987年,1988年,1989年,1990年,1991年,        1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,        2003,2004,2005,2006,2007,2008,2009,2010,2011])

physical_sciences 阵列([13.8,14.9,14.8,16.5,18.2,19.1,20。,21.3,22.5,23.7,24.6,        25.7,27.3,27.6,28,27.5,28.4,30.4,29.7,31.3,31.6,32.6,        32.6,33.6,34.8,35.9,37.3,38.3,39.7,40.2,41,42.2,41.1,        41.7,42.1,41.6,40.8,40.7,40.7,40.7,40.2,40.1])

computer_science 阵列([13.6,13.6,14.9,16.4,18.9,19.8,23.9,25.7,28.1,30.2,32.5,        34.8,36.3,37.1,36.8,35.7,34.7,32.4,30.8,29.9,29.4,28.7,        28.2,28.5,28.5,27.5,27.1,26.8,27.,28.1,27.7,27.6,27,        25.1,22.2,20.6,18.6,17.6,17.8,18.1,17.6,18.2])

当我运行以下代码时

# Create plot axes for the first line plot
plt.axes([.05,.05,.425,.9])

# Plot in blue the % of degrees awarded to women in the Physical Sciences
plt.plot(year, physical_sciences, color='blue')

# Create plot axes for the second line plot
plt.axes([.525,.05,.425,.9])

# Plot in red the % of degrees awarded to women in Computer Science
plt.plot(year, computer_science, color='red')

# Display the plot
plt.show()

Graph generated

我的问题是为什么轴指定的corrdinates不在x轴上,或者它是否以其他方式工作。 谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

matplotlib documentation of pyplot.axes我可以看到axes的参数可能是

  

浮动的4元组rect = [left, bottom, width, height]。使用当前数字上的add_axes,在标准化rect单位中添加维度(0, 1)的新轴。

这意味着plt.axes([.05,.05,.425,.9])会在(.05,.05)左下角添加一个轴,宽度为.425,高度为.9。粗略地说它横跨图的左侧部分。

请注意,根本不需要指定轴的位置。只是并排创建两个子图就足够了。

# Create plot axes for the first line plot
plt.subplot(121)

# Plot in blue the % of degrees awarded to women in the Physical Sciences
plt.plot(year, physical_sciences, color='blue')

# Create plot axes for the second line plot
plt.subplot(122)

# Plot in red the % of degrees awarded to women in Computer Science
plt.plot(year, computer_science, color='red')

# Display the plot
plt.show()