2016-07-31 2 views
0

Я пытаюсь расположить два участка рядом друг с другом, но я не знаю, как это правильно.Попытка позиционировать участки рядом друг с другом

Это первый участок:

x_new = np.linspace(dsa[0], dsa[-1], num=len(dsa)*10) 
coefs = poly.polyfit(dsa, Wechsel, 1) 
ffit = poly.polyval(x_new, coefs) 
plt.grid(True) 
plt.xlabel("Druck p in mbar") 
plt.ylabel("Minimawechsel N") 
plt.plot(x_new, ffit, color="red", linestyle="solid", linewidth=1) 
plt.plot(dsa, Wechsel, 'ro', label="Sauerstoff") 
plt.legend(loc=1) 

Это второй один:

x_new1 = np.linspace(dar[0], dar[-1], num=len(dar)*10) 
coefs1 = poly.polyfit(dar, Wechsel, 1) 
ffit1 = poly.polyval(x_new1, coefs1) 
plt.grid(True) 
plt.xlabel("Druck p in mbar") 
plt.ylabel("Minimawechsel N") 
plt.plot(x_new1, ffit1, color="blue", linestyle="solid", linewidth=1) 
plt.plot(dar, Wechsel, 'ro', color='blue', label="Argon") 
plt.legend(loc=1) 

ответ

0

Вы можете использовать plt.subplots:

f, (ax1, ax2) = plt.subplots(1, 2) 

x_new = np.linspace(dsa[0], dsa[-1], num=len(dsa)*10) 
coefs = poly.polyfit(dsa, Wechsel, 1) 
ffit = poly.polyval(x_new, coefs) 
ax1.grid(True) 
ax1.set_xlabel("Druck p in mbar")     
ax1.set_ylabel("Minimawechsel N") 
ax1.plot(x_new, ffit, color="red", linestyle="solid", linewidth=1) 
ax1.plot(dsa,Wechsel,'ro', label="Sauerstoff") 
ax1.legend(loc=1) 

и аналогично с ax2:

x_new1 = np.linspace(dar[0], dar[-1], num=len(dar)*10) 
coefs1 = poly.polyfit(dar, Wechsel, 1) 
ffit1 = poly.polyval(x_new1, coefs1) 
ax2.grid(True)        
ax2.set_xlabel("Druck p in mbar")     
ax2.set_ylabel("Minimawechsel N") 
ax2.plot(x_new1, ffit1, color="blue", linestyle="solid", linewidth=1) 
ax2.plot(dar,Wechsel, 'ro',color='blue', label="Argon") 
ax2.legend(loc=1) 
+0

Thx для вашего ответа. Это сработало, но проблема с осью x. Я сделал скрининг: http://docdro.id/ytauVF0. \t Его трудно, есть ли способ сделать его более широким? –

+1

@ Heißenberg93 Существует несколько способов решения этой проблемы. Что бы я сделал, это настроить количество тиков на оси x, используя 'ax.set_xticks()' (http://matplotlib.org/api/axes_api.html#matplotlib.axes.Axes.set_xticks). Вам нужно будет рассчитать тики самостоятельно (я бы начал с существующих тиков, используя 'ax1.get_xticks()') –

+0

@JulienSpronck благодарит вас за сообщение здесь. Я пытаюсь использовать его в своем коде, и я получаю AttributeError: у объекта AxesSubplot нет атрибута «plt» по какой-либо причине. Есть идеи? – mkheifetz

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