Datei:Map of West Europe during Last Glacial Maximum 1.svg
Diese Datei stammt aus Wikimedia Commons und kann von anderen Projekten verwendet werden. Die Beschreibung von deren Dateibeschreibungsseite wird unten angezeigt.
LernweltNOAH fragenBeschreibung
| BeschreibungMap of West Europe during Last Glacial Maximum 1.svg |
English: Map of West Europe during cast clacial maximum ca. 24000 cal BP or
20000 rcybp. This maps shows LGM glaciers ith current topography, but sea level is 120 m below present sea level. |
| Datum | |
| Quelle | Eigenes Werk |
| Urheber | Merikanto |
| SVG‑Erstellung InfoField |
Other information
This image is generated with Generic Mapping Tools 5.4. Output is converted w/ ps2pdf, pdf2svg and svgo utilities. Image cropping with Inkscape.
Basic topography data is
ETOPO1
doi:10.7289/V5C8276M
https://data.nodc.noaa.gov/cgi-bin/iso?id=gov.noaa.ngdc.mgg.dem:316
that is cut and
filtered with SAGA GIS Gaussian blur, blur radius=5 and search radius=10
LGM glaciers, glacial lakes data is from
Becker, D., Verheul, J., Zickel, M., Willmes, C. (2015): LGM paleoenvironment of Europe - Map. CRC806-Database, DOI: 10.5880/SFB806.15
https://crc806db.uni-koeln.de/dataset/show/lgm-paleoenvironment-of-europe--map1449850675/
Data is converted from json to .csv with
geojson2csv utility
- ubuntu, debian, mint .. script
- to cut and adjust LGM sealevel
- and blur ETOPO1 grid
sudo apt install qgis saga
ingrid="ETOPO1_Ice_g_gmt4.grd"
outgrid="europe_large_1.nc"
rect=-R-10/60/30/65
gmt grdcut $ingrid -G$outgrid $rect -V
saga_cmd grid_filter 1 -INPUT europe_large_1.nc -RESULT europe_large_1_510.nc -SIGMA 5 -RADIUS 10
gdal_translate -of GMT europe_large_1_510.sdat europe_large_1_510.nc
gdal_calc.py -A europe_large_1_510.nc --outfile=result.tif --calc="(A+120)"
gdal_calc.py -A result.tif --outfile=europe_large_1_lgm_510.tif --calc="((A>0)*A)"
gdal_translate -of GMT europe_large_1_lgm_510.tif europe_large_1_lgm_510.nc
gmt grdgradient europe_large_1_lgm_510.nc -Geurope_large_1_lgm_510_shade.int -A0 -Nt -fg
- cp europe_large_1_lgm_510.nc ..
- cp europe_large_1_lgm_510_shade.int ..
GMT 5,4 script to produce imege
output=fig.ps
rect=-R-10/20/35/55
proj=-JQ10
gmt grdimage $rect $proj europe5.nc -Ieurope5_shade.int -Ccolors2.cpt -B5 -K > $output
- gmt grdimage $rect $proj europe5.nc -Ccolors4.cpt -B5 -K > $output
gmt pscoast $rect $proj -Dh -B5/5 -G- -S- -W- -Ia,0/0/255 -O -K >>$output
gmt psxy $rect $proj -G255/255/255 mysli1.csv -O -K >>$output
gmt psxy $rect $proj -G255/255/255 lgmglacier1.csv -O >>$output
ps2pdf fig.ps fig.pdf
pdf2svg fig.pdf fig.svg
svgo fig.svg -o fig2.svg
Geojson2csv .cpp source code Is public domain, Made my merikanto
// THIS CODE IS Public Domain
// NO warranties, no resoponsibility, hope it is useful
// geojson2csv.cpp v 0.36 15.11.2018
// WARN UNDER ALPHA STATE!
// extract coordinates from geojson file "geojson2csv"
// tested w/ ubuntu, gcc
//
// usage geojson2csv [inputfile] [-s1] [-segm]
// tex geojson2csv in.geojson -s1 , numbered lines
// tex geojson2csv in.geojson , without line numbers
// tex geojson2csv lines.geojson -segm , with lines in geojson, without line numbers
- include <stdio.h>
- include <stdlib.h>
- include <string.h>
- include <fcntl.h>
- define NAMELEN 3200
- define ROWLEN 320000
// one segment on line
int segment=0;
// line numbers
int output_type=0;
char iname[NAMELEN]="in.geojson";
char oname[NAMELEN]="out.csv";
int json2_lonlat(char *iname, char *oname)
{
FILE *fin=NULL;
FILE *fout=NULL;
int lukko=0;
char c=0;
int pitu=0;
int rinu=1;
char *p=NULL;
char row[ROWLEN];
char row2[ROWLEN];
memset(row,0,ROWLEN);
memset(row2,0,ROWLEN);
fin=fopen(iname, "r");
if(!fin)
{
printf("\n Input file open error. Maybe there ot file or read permission.");
return(-1);
}
fout=fopen("tmp.txt", "w");
if(!fout)
{
printf("\n Output file open error. Maybe no permission or your disk is full. ");
return(-1);
}
while(!feof(fin))
{
c=fgetc(fin);
if(segment==1)
{
if(c==10)
{
//fprintf(stdout, "\n>SEGU\n");
//fputc(10,fout);
//fputc(13,fout);
fprintf(fout, "\n>\n ");
}
}
if(c=='[')
{
fprintf(fout, "\n");
// printf("\n ");
continue;
}
if(c==']')
{
continue;
}
if(c==',')
{
continue;
}
if(c=='{')
{
continue;
}
if(c=='}')
{
continue;
}
fputc(c,fout);
// printf("%c",(char *)c);
}
fclose(fout);
fclose(fin);
//system("iconv -f iso8859-14 -t utf8 tmp.txt > tmp2.txt");
// printf("\b BGK BRK");
// exit(-1);
fin=fopen("tmp.txt", "r");
if(!fin)
{
printf("\n Input file open error.");
return(-1);
}
// fout=fopen("outmp.txt", "w");
fout=fopen(oname, "w");
if(!fout)
{
printf("\n Output file open error.");
return(-1);
}
int alussa=1;
int edu=0;
while(!feof(fin))
{
pitu=0;
lukko=0;
memset(row,0,ROWLEN);
memset(row2,0,ROWLEN);
// fread(row,1,ROWLEN,fin);
fgets(row,ROWLEN,fin);
pitu=strlen(row);
if (strchr(row, '\"') )
{
lukko=1;
}
if (pitu<5 )
{
if(alussa==0)
{
if(edu==0)
{
if(segment==1)
{
fprintf(fout, ">\n");
edu=1;
}}
}
lukko=1;
}
if(lukko==0)
{
alussa=0;
edu=0;
// fprintf(stdout, "%s",row);
strcpy(row2,row);
char *p=NULL;
p=strchr(row2,' ');
if(p) *p=',';
p++;
p=strchr(p,' ');
if(p) *p=',';
if(output_type==1)
{
fprintf(fout, "%i%s",rinu, row2);
}
else
{ p=row2+1;
fprintf(fout, "%s",p);
}
rinu++;
}
}
// system("iconv -f iso8859-14 -t utf8 outmp.txt > out.txt");
fclose(fout);
fclose(fin);
return(0);
}
int params(int argc, char **argv)
{
int n=0;
char *p=NULL;
printf("\n Sample usage for points: geojson2csv in.geojson -s1");
printf("\n For lines etc. use -segm : geojson2csv in.geojson -s1 -segm");
// defaults!
output_type=0;
segment=0;
for(n=0;n<argc;n++)
{
printf("\n %s ", argv[n] );
if(!strcmp(argv[n],"-s1"))
{
output_type=1;
continue;
}
// segmented output
if(!strcmp(argv[n],"-segm"))
{
segment=1;
// printf("n Seg");
continue;
}
// no segmented output
if(!strcmp(argv[n],"-segm-"))
{
segment=0;
continue;
}
}
if (argv[1] )
{
memset(iname,0,NAMELEN);
memset(oname,0,NAMELEN);
strcpy(iname,argv[1]);
p=NULL;
p=strchr(iname,'.');
*p=0;
strcpy(oname, iname);
strcat(oname,".csv");
*p='.';
}
if (argv[2] )
{
if(strcmp(argv[2],"-s1"))
{
if(strcmp(argv[2],"-segm"))
{
if(strcmp(argv[2],"-segm-"))
{
memset(oname,0,NAMELEN);
strcpy(oname,argv[2]);
}}}
}
printf("\n Iname %s Oname %s ", iname, oname);
printf("\n Output_type %i .", output_type);
printf("\n Segmented %i .", segment);
printf("\n");
return(0);
}
int main(int argc, char **argv)
{
// segment=1;
params(argc, argv);
printf("\n Konv ... \n");
// json2_lonlat("mysli1.geojson", "mysli1.csv");
json2_lonlat(iname, oname);
printf("\n Yess. \n");
return(0);
}
Lizenz
- Dieses Werk darf von dir
- verbreitet werden – vervielfältigt, verbreitet und öffentlich zugänglich gemacht werden
- neu zusammengestellt werden – abgewandelt und bearbeitet werden
- Zu den folgenden Bedingungen:
- Namensnennung – Du musst angemessene Urheber- und Rechteangaben machen, einen Link zur Lizenz beifügen und angeben, ob Änderungen vorgenommen wurden. Diese Angaben dürfen in jeder angemessenen Art und Weise gemacht werden, allerdings nicht so, dass der Eindruck entsteht, der Lizenzgeber unterstütze gerade dich oder deine Nutzung besonders.
- Weitergabe unter gleichen Bedingungen – Wenn du das Material wiedermischst, transformierst oder darauf aufbaust, musst du deine Beiträge unter der gleichen oder einer kompatiblen Lizenz wie das Original verbreiten.
Kurzbeschreibungen
In dieser Datei abgebildete Objekte
Motiv
Einige Werte ohne einen Wikidata-Eintrag
17. November 2018
image/svg+xml
1.437.159 Byte
284 Pixel
421 Pixel
15cda931f59ae4b0001689ffa2cf5e6f7579391e
Dateiversionen
Klicke auf einen Zeitpunkt, um diese Version zu laden.
| Version vom | Vorschaubild | Maße | Benutzer | Kommentar | |
|---|---|---|---|---|---|
| aktuell | 17:28, 17. Nov. 2018 | 421 × 284 (1,37 MB) | wikimediacommons>Merikanto | User created page with UploadWizard |
Dateiverwendung
Die folgende Seite verwendet diese Datei:
Metadaten
Diese Datei enthält weitere Informationen, die in der Regel von der Digitalkamera oder dem verwendeten Scanner stammen. Durch nachträgliche Bearbeitung der Originaldatei können einige Details verändert worden sein.
| Breite | 336.88397pt |
|---|---|
| Höhe | 227.36501pt |
LernweltNOAH fragen