2016-04-13 3 views
3
  1. Я хочу увеличить пространство между метками по оси x, чтобы они не были рядом друг с другом.Matplotlib Увеличить пробел между метками оси x

  2. В любом случае, я мог бы «перетащить» график по горизонтали, его, как я мог бы сделать в excel, когда я перетаскиваю сюжет по горизонтали вправо, весь сюжет становится больше.

Вот текущий снимок экрана: 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 содержит все метки для оси х. Спасибо!

+0

Я думаю, что интервал устанавливается автоматически 'функции plt.plot'. Он пытается даже интервал между метками. Можете ли вы увеличить размер сюжета? – davidshen84

ответ

0

Вы можете увеличить интервал между метками от 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

Смежные вопросы