@HSE: I must try to reconstruct where my data come from, e.g.
https://datahub.io/core/global-tempDon't jump to conclusions about the hen & eggs problem - the overlay plot just normalises the three datasets. It is pretty evident, though. There is a known irregularity for global temp in the 1940s and 50s, I wonder whether they eventually agreed on the cause (volcanic activity?).
Here is what the
New Scientist writes about it:
The sudden drop in temperatures in 1945 now appears to be an artefact of a switch from using mainly US ships to collect sea surface temperature data to using mainly UK ships. The two fleets used a different method.

Source (69 lines of code) and data are attached; building requires
MasmBasic version 10 April 2019 or later.
Grateful for feedback if it looks good on other Windows versions, too (screenshot is Win7-64; WinXP works, too).
If I find the time, I will post a step-by-step example soon. The attached GlobalWarming.asc uses three different methods to load the data into numeric arrays, here are two:
StringToArray 100, gem() As REAL4, staHasText ; ** emissions ** (ID100 is global_emissions.tab in resources)
UnzipInit 103 ; resource ID for annual_CO2_concentrations.zip
StringToArray UnzipFile(0), x$(), csv ; ** CO2 concentration ** (resource zipped for smaller exe)
UnzipExitDepending on the format of the data (strings, well or badly organised, REALx binary data), there are several options, in particular
StringToArray and
ArrayRead.