2017-04-08 16 views
3

私はSEでしばらく探していましたが、私は作品を見つけることはできませんでした。私は長年にわたり最低気温と最高気温のデータフレームを持っています。ダニの数を変更するにはどうすればよいですか?

plt.figure() 
plt.gca().fill_between(range(len(Tmin)), Tmin, Tmax, facecolor='blue', alpha=0.25) 
plt.plot(range(365), Tmin, 'b', range(365), Tmax, 'r') 
plt.locator_params(axis = 'x', nbins = 12) 

x = plt.gca().xaxis 
m = ['JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC'] 
ax = plt.gca() 
ax.locator_params(axis = 'x', nbins = 12) 
ax.set_xticklabels(m) 
ax.set_ylabel('T(C)') 
ax.set_title('Temperature') 
plt.xlim([0,365]) 
# ax.set_xticks(np.linspace(0,1,12)) 
plt.show() 

それはまだx軸は[0、50、100、...、350]

enter image description here

答えて

2

次のことが可能であり、元のプロットとティックの同じ番号を出力します毎月1月1日以降の日数を取得して手動で目盛りを設定します。

import datetime as dt 
import numpy as np 
import matplotlib.pyplot as plt 

x = np.arange(365) 
y = 100 + 250*np.sin(9*(x-50)/720) + 80*np.random.rand(365) 

m = ['JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC'] 
# get the start day for each month as an index 
ticks = [(dt.date(2016,m,1)-d0).days for m in range(1,13)] 

fig,ax = plt.subplots(1,1) 
ax.plot(x,y) 
ax.set_xticks(ticks) 
ax.set_xticklabels(m) 
ax.set_xlim(-3,365) 
plt.show() 

enter image description here

+0

ナイス!ありがとうございました:)私はなぜ私が伝説を何とか動かすことができない理由も知っているだろうか? :'plt.legend(['1'、'2015レコードの高さ '、'2015レコードの低さ])' 'plt.legend(loc = 4、frameon = False、numpoints = 1) 、title = 'Legend') ' ラベルが表示されますが、位置はまだ右上にあり、3つの散点とタイトルはありません。 :( – Raksha

関連する問題