2015-11-28 3 views
0

Я использую matplotlib.pyplot для построения графиков, и по некоторым причинам я не вижу линий осей, хотя я вижу xticks и yticks. Важно отметить, что я использую питон ноутбук, и обычно я стараюсь визуализировать свои графики с помощью функции (% Matplotlib инлайн)Как сделать мои оси видимыми с помощью matplotlib?

Вот пример фигура, что я получаю (без осей):

example figure

Вот код, который я использовал, чтобы произвести эту цифру:

fig, ax = plt.subplots(1,1, figsize=(7.5,6), sharey=False, sharex=False, edgecolor='k', frameon=True) 
ax.plot(np.array(frequency_vec), before_LTP, 'b-o', label='Before'); 
ax.plot(np.array(frequency_vec), After_LTP, 'r-o', label='After'); 
plt.yticks([1,2,3,4,5,6,7,8], ['1','2','3','4','5','6','7','0'], fontsize=14) 
plt.xticks(fontsize=14) 
plt.rcParams['axes.edgecolor']='k' 
ax.patch.set_visible(False) 
ax.grid(False) 
ax.set_frame_on(True) 
ax.set_xlim(0, 110) 
ax.set_ylim(1,(Number_of_pulses)+2) 
ax.legend(loc='best', fontsize=15) 
plt.xticks([12.5,25,50,75,100], ['12.5','25','50','75','100']); 

Итак, еще раз - Как я могу сделать мои топоры-линии, чтобы быть видимыми?

Спасибо!

+0

Вы забыли оставить свой код. – jme

+0

Я думаю, что будет намного проще для других ответить на ваш вопрос, если вы можете опубликовать фрагмент кода. –

ответ

0

У вас есть специальная настройка в файле matplotlibrc, таком как edgecolor?

import matplotlib as mpl print mpl.rcParams['axes.edgecolor']

Если это 'ш' (белый) установите его в 'к' (черный)

Если это не edgecolor, у вас есть frameon = False? Попробуйте что-то вроде этого:

fig, ax = subplots() ax.plot([1,2,4],[4,5,6], 'r^-') ax.set_frame_on(True)

+0

Привет, к сожалению, он все еще не работает. Я попытался изменить edgecolor на черный и нажать framon = True ... –

+0

Я пробовал: fig, ax = plt.subplots (1,1, figsize = (7.5,6), sharey = False, sharex = False, edgecolor = 'k', frameon = True), а также: plt.rcParams ['axes.edgecolor'] = 'k' ax.patch.set_visible (False) ax.grid (True) ax.set_frame_on (True) –

+0

В коде нет ничего особенного. Есть ли что-нибудь в вашем файле matplotlibrc: 'import matplotlib print matplotlib.matplotlib_fname()' – Happy001

-1

я писал, что и он работал

plt.axes().get_xaxis().set_visible(False) 
plt.axes().get_yaxis().set_visible(False) 

Ну, просто написать 'True' вместо 'False'.

+1

Этот ответ может быть улучшен некоторым объяснением что касается основной проблемы. –