Matplotlib放大x轴标签之间的空间

时间:2016-04-13 02:10:18

标签: python python-2.7 python-3.x matplotlib plot

  1. 我想增加x轴标签之间的空间,使它们不会并排放置。

  2. 无论如何我可以"拖动"水平绘图,就像我在excel中可以做的那样,当我将绘图水平向右拖动时,整个绘图变得更大。

  3. 以下是当前截图: enter image description here

    我确实使用了像ax.xaxis.get_children()1。set_size(100)之类的代码,但它无效。

                   import matplotlib.pyplot as plt
                   import numpy as np
                   line = plt.figure()    
                   plt.plot(x,y, 'r-',marker='o', color='b')
                   plt.grid(True)
                   plt.xticks(x, Quickdatres,rotation="vertical")
    
                   ax=plt.subplot()
                   ax.xaxis.get_children()[1].set_size(100)
                   for label in ax.xaxis.get_ticklabels()[::2]:  
                   label.set_visible(False)   
    
                   plt.show()
    

    Quickdatres包含x轴的所有标签。 THX!

1 个答案:

答案 0 :(得分:-1)

您可以将标签之间的间隔从3增加到5.(我必须构建假数据才能绘图)。

import matplotlib.pyplot as plt
import numpy as np


x = np.arange(402, 630)
Quickdatres = [str(_) if _%5==0 else '' for _ in x]
y = np.random.randint(500, 3000, 630-402)

line = plt.figure()    
plt.plot(x, y, 'r-', marker='o', color='b')
plt.grid(True)
plt.xticks(x, Quickdatres, rotation="vertical")

ax = plt.subplot()
ax.xaxis.get_children()[1].set_size(100)
for label in ax.xaxis.get_ticklabels()[::2]:  
    label.set_visible(False)   

plt.show()

enter image description here