ファイル:Global_warming_hiatus.gif
[Wikipedia|▼Menu]

ファイル

ファイルの履歴

ファイルの使用状況

グローバルなファイル使用状況
高解像度版はありません。

Global_warming_hiatus.gif ‎(509 × 370 ピクセル、ファイルサイズ: 500キロバイト、MIME タイプ: image/gif、ループします、42 フレーム、18秒)



このファイルは、ウィキメディア・コモンズから呼び出されています。

このファイルは、他のプロジェクトで使用されている可能性があります。

このファイルの解説やノートへの記入、履歴などの詳細の確認は、ウィキメディア・コモンズのファイルページ(ノート/履歴/ログ)を使用してください。
ウィキメディア・コモンズのファイルページにある説明を、以下に表示します。
概要

解説Global warming hiatus.gifEnglish: By selecting or cherry-picking data, the trend of global warming appears to mistakenly stop, as in the period from 1998 to 2012, which is actually a random contrary fluctuation.
日付2021年9月1日
原典投稿者自身による著作物
作者Physikinger
その他のバージョンGerman version File:Vermeindlicher Stillstand der globalen Erwaermung.gif
GIF 開発InfoField この GIF ラスター画像はMatplotlibで作成されました。
ソースコードInfoFieldPython code# This source code is public domainimport numpyimport matplotlib.pyplot as pltimport imageioyear_T = { # https://data.giss.nasa.gov/gistemp/tabledata_v4/GLB.Ts+dSST.txt # GLOBAL Land-Ocean Temperature Index in 0.01 degrees Celsius base period: 1951-1980 # sources: GHCN-v4 1880-07/2021 + SST: ERSST v5 1880-07/2021 # using elimination of outliers and homogeneity adjustment # Divide by 100 to get changes in degrees Celsius (deg-C). # Year J-D (annual mean Temperature Jan to Dec) 1880: -16, 1881: -8, 1882: -11, 1883: -17, 1884: -28, 1885: -33, 1886: -31, 1887: -36, 1888: -17, 1889: -10, 1890: -35, 1891: -22, 1892: -27, 1893: -31, 1894: -30, 1895: -22, 1896: -11, 1897: -11, 1898: -27, 1899: -17, 1900: -8, 1901: -15, 1902: -28, 1903: -37, 1904: -47, 1905: -26, 1906: -22, 1907: -38, 1908: -43, 1909: -48, 1910: -43, 1911: -44, 1912: -36, 1913: -34, 1914: -15, 1915: -14, 1916: -36, 1917: -46, 1918: -30, 1919: -28, 1920: -27, 1921: -19, 1922: -29, 1923: -27, 1924: -27, 1925: -22, 1926: -11, 1927: -22, 1928: -20, 1929: -36, 1930: -16, 1931: -9, 1932: -16, 1933: -29, 1934: -13, 1935: -20, 1936: -15, 1937: -3, 1938: 0, 1939: -2, 1940: 13, 1941: 19, 1942: 7, 1943: 9, 1944: 20, 1945: 9, 1946: -7, 1947: -3, 1948: -11, 1949: -11, 1950: -17, 1951: -7, 1952: 1, 1953: 8, 1954: -13, 1955: -14, 1956: -19, 1957: 5, 1958: 6, 1959: 3, 1960: -3, 1961: 6, 1962: 3, 1963: 5, 1964: -20, 1965: -11, 1966: -6, 1967: -2, 1968: -8, 1969: 5, 1970: 3, 1971: -8, 1972: 1, 1973: 16, 1974: -7, 1975: -1, 1976: -10, 1977: 18, 1978: 7, 1979: 16, 1980: 26, 1981: 32, 1982: 14, 1983: 31, 1984: 16, 1985: 12, 1986: 18, 1987: 32, 1988: 39, 1989: 27, 1990: 45, 1991: 40, 1992: 22, 1993: 23, 1994: 31, 1995: 45, 1996: 33, 1997: 46, 1998: 61, 1999: 38, 2000: 39, 2001: 53, 2002: 63, 2003: 62, 2004: 53, 2005: 67, 2006: 63, 2007: 66, 2008: 54, 2009: 65, 2010: 72, 2011: 61, 2012: 65, 2013: 67, 2014: 74, 2015: 90, 2016: 101, 2017: 92, 2018: 85, 2019: 97, 2020: 102, 2021: 85, 2022: 89, 2023: 117 } x, y = (numpy.array(list(x()), dtype='d') for x in (year_T.keys, year_T.values))y = y / 100xMinFocus, xMaxFocus = 1998, 2012i0 = x.tolist().index(xMinFocus)i1 = x.tolist().index(xMaxFocus) + 1nPoly = 4phi = numpy.array([x**i for i in range(nPoly)])A = phi @ phi.Tb = phi @ yc = numpy.linalg.solve(A, b)yPoly = c @ phiphiHist = phi[:,:i1]A = phiHist @ phiHist.Tb = phiHist @ y[:i1]c = numpy.linalg.solve(A, b)yPolyHist = c @ phinPoly = 3phiF = phi[:nPoly,i0:i1]A = phiF @ phiF.Tb = phiF @ y[i0:i1]c = numpy.linalg.solve(A, b)yPolyFocus = c @ phi[:nPoly]yMinTotal, yMaxTotal = numpy.min(y) - 0.02, numpy.max(y) + 0.02xMinTotal, xMaxTotal = numpy.min(x), numpy.max(x)yMinFocus, yMaxFocus = numpy.min(y[i0:i1]) - 0.02, numpy.max(y[i0:i1]) + 0.02plt.xlim(xMinFocus-0.1, xMaxFocus+0.1)# Frame-Parameter:# t: Frame duration# trans1: transition 0 to 1 towards full time frame# trans2: transition 0 to 1 towards full data set# showTrend: Trend (0: None, 1: Zoom, 2: full history, 3: full time frame)parameters = [ # (t, trans1, trans2, showTrend) (1, 0.0, 0.0, 0), (4, 0.0, 0.0, 1), *[(0.1, t**2, 0.0, 1) for t in numpy.linspace(0,1,25)], (1.0, 1.0, 0.0, 1), (0.5, 1.0, 0.0, 0), (1, 1.0, 0.0, 2), *[(0.1, 1.0, t,2) for t in numpy.linspace(0,1,10)], (0.5, 1.0, 1.0, 2), (6, 1.0, 1.0, 3), ]images = []duration = []for t, trans1, trans2, showTrend in parameters: duration.append(t) zoom = 4*(1-trans1) + 1*trans1 fig = plt.figure(figsize=(5.1,3.7), dpi=100) plt.rc('axes', titlesize=14, labelsize=12) plt.rc('xtick', labelsize=11) plt.rc('ytick', labelsize=11) plt.rc('legend', fontsize=16) if showTrend == 1: plt.plot(x[i0-15:], yPolyFocus[i0-15:], 'r--', label='Trend') if showTrend == 2: plt.plot(x, yPolyHist, 'b--', label='Trend') if showTrend == 3: plt.plot(x, yPoly, 'b--', label='Trend') iMax = int(i1 + trans2*(len(x)-i1)) plt.plot(x[:iMax], y[:iMax], 'C0.-', alpha=0.8, linewidth=0.8*zoom, markersize=6*zoom) plt.plot(x[i0:i1], y[i0:i1], 'C3.-', linewidth=0.805*zoom, markersize=6.05*zoom) plt.grid(True, alpha=0.7) yMax = yMaxFocus + trans1*(yMaxTotal-yMaxFocus) xMax = xMaxFocus + trans1*(xMaxTotal-xMaxFocus) xMin = xMinFocus*(1-trans1) + xMinTotal*trans1 plt.xlim(xMin-0.1, xMax+0.1+1*trans1) plt.ylim(yMinFocus*(1-trans1) + yMinTotal*trans1, yMaxFocus*(1-trans1) + yMax*trans1+0.03*trans1) plt.text(0.02, 0.89, '%i - %i'%(xMin, x[iMax-1]), transform=plt.gca().transAxes, fontsize=20) plt.title('Global Warming Hiatus') plt.xlabel('Year') plt.ylabel('Relative Global Temperature (°C)') plt.gca().yaxis.set_label_coords(-0.13, 0.5) if showTrend: leg = plt.legend(frameon=False, loc='lower right') fig.subplots_adjust( top=0.9, bottom=0.13, left=0.15, right=0.95, hspace=0.2, wspace=0.2 ) fig.canvas.draw() s, (width, height) = fig.canvas.print_to_buffer() images.append(numpy.array(list(s), numpy.uint8).reshape((height, width, 4))) fig.clf() plt.close('all')# Save GIF animationfileOut = 'Global_warming_hiatus.gif'imageio.mimsave(fileOut, images, duration=duration)# Optimize GIF sizefrom pygifsicle import optimizeoptimize(fileOut, colors=20)
ライセンスこの作品の著作権者である私は、この作品を以下のライセンスで提供します。

 このファイルはクリエイティブ・コモンズ CC0 1.0 全世界 パブリック・ドメイン提供のもとで利用可能にされています。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:17 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef