matplotlib散点图在x轴上改变距离

时间:2014-10-13 11:49:35

标签: python matplotlib plot scatter-plot

我想用Matplotlib散点图绘制一些数据。 我使用以下代码将数据绘制为散点图,并为不同的子图使用相同的轴。

import numpy as np
import matplotlib.pyplot as plt

epsilon= np.array([1,2,3,4,5])

f, (ax1, ax2, ax3, ax4) = plt.subplots(4, sharex= True, sharey=True)
ax1.scatter(epsilon, mean_percent_100_0, color='r', label='Totaldehnung= 0.000')
ax1.scatter(epsilon, mean_percent_100_03, color='g',label='Totaldehnung= 0.003')
ax1.scatter(epsilon, mean_percent_100_05, color='b',label='Totaldehnung= 0.005')
ax1.set_title('TOR_R')
ax2.scatter(epsilon, mean_percent_111_0,color='r')
ax2.scatter(epsilon, mean_percent_111_03,color='g')
ax2.scatter(epsilon, mean_percent_111_05,color='b')
ax3.scatter(epsilon, mean_percent_110_0,color='r')
ax3.scatter(epsilon, mean_percent_110_03,color='g')
ax3.scatter(epsilon, mean_percent_110_05,color='b')
ax4.scatter(epsilon, mean_percent_234_0,color='r')
ax4.scatter(epsilon, mean_percent_234_03,color='g')
ax4.scatter(epsilon, mean_percent_234_05,color='b')

# Fine-tune figure; make subplots close to each other and hide x ticks for
# all but bottom plot.
f.subplots_adjust(hspace=0.13)
plt.setp([a.get_xticklabels() for a in f.axes[:-1]], visible=False)
plt.locator_params(axis = 'y', nbins = 4)

ax1.grid()
ax2.grid()
ax3.grid()
ax4.grid()

plt.show()

现在我想要一个x轴,每个点之间的空间更小。我试图改变范围,但它不起作用。有人能帮我吗? enter image description here

1 个答案:

答案 0 :(得分:1)

为了使x刻度更接近,您可能需要设置图形的尺寸。

因为在您的情况下,已经创建了图形,所以使用figure对象的set_size_inches方法设置图的大小。

This question包含其他一些方法。

plt.show()

之前添加以下行
fig.set_size_inches(2,8)

给我这个:

enter image description here

我希望你正在努力做到这一点。