#python #python-3.x
#python #python-3.x
Вопрос:
import matplotlib.pyplot as plt
import numpy as np
max_temp=np.random.randint(1,46,12)
min_temp=np.random.randint(-20,0,12)
months = np.arange(1,13)
diff_temp=abs(max_temp-min_temp)
avg_diff_temp=np.mean(diff_temp)
over_avg=np.where(diff_temp>avg_diff_temp)
print(max_temp)
print(min_temp)
print('Monthly differences: {}'.format(diff_temp))
print('Average difference: {}'.format(avg_diff_temp))
print('Months with difference above average:')
for i in over_avg:
print(i 1,end=' ')
plt.clf()
plt.subplot(1,2,1)
plt.plot(months,max_temp)
plt.plot(months,min_temp)
plt.axis([1,12,min(min_temp),max(max_temp)])
plt.xlabel('Month')
plt.ylabel('Temperature')
plt.title('Comparison of Monthly Temperatures')
plt.legend(['max temps','min temps'])
plt.grid()
plt.subplot(1,2,2)
plt.plot(months,diff_temp)
plt.axis([1,12,min(diff_temp),max(diff_temp)])
plt.xlabel('Month')
plt.ylabel('Temperature Difference')
plt.title('Monthly Differences')
plt.grid()
Здравствуйте, я пишу код, который в основном отображает максимальные, минимальные сроки месяцев и их разницу. Я хочу спросить, что когда я запускаю программу, значения по оси x равны 2.5 5.0 7.5 10.0, но поскольку числа месяцев являются целыми числами, я хочу сделать значения x такими, как 2,4,6,8,10,12 или что-то еще. Как я могу это сделать? Спасибо.
Ответ №1:
Вы можете использовать
plt.xticks(np.linspace(2,14,7),np.linspace(2,14,7).astype(int))
В первом указаны местоположения, а во втором указаны метки.