GMT 6.0.0 is released!

After 5 release candidates, the GMT team is pleased to announce that GMT 6.0.0 is finally out and ready for use!

Links to install instructions and to download the installers are at https://www.generic-mapping-tools.org/download

This version has been under development for the past 3 years and awesome new features while retaining backwards compatibility with the 5.4.* series (if anything is broken, please report it as a bug).

The killer feature is modern mode, which automates most of the major pain points and usability problems of GMT. As a demonstration, this is Gallery example 16 in classic mode (GMT 5):

ps=example_16.ps
gmt set FONT_ANNOT_PRIMARY 9p

gmt pscontour -R0/6.5/-0.2/6.5 -Jx0.45i -P -K -Y5.5i -Ba2f1 -BWSne table_5.11 -Cex16.cpt -I > $ps
echo "3.25 7 pscontour (triangulate)" | gmt pstext -R -J -O -K -N -F+f18p,Times-Roman+jCB >> $ps

gmt surface table_5.11 -R -I0.2 -Graws0.nc
gmt grdview raws0.nc -R -J -B -Cex16.cpt -Qs -O -K -X3.5i >> $ps
echo "3.25 7 surface (tension = 0)" | gmt pstext -R -J -O -K -N -F+f18p,Times-Roman+jCB >> $ps

gmt surface table_5.11 -R -I0.2 -Graws5.nc -T0.5
gmt grdview raws5.nc -R -J -B -Cex16.cpt -Qs -O -K -Y-3.75i -X-3.5i >> $ps
echo "3.25 7 surface (tension = 0.5)" | gmt pstext -R -J -O -K -N -F+f18p,Times-Roman+jCB >> $ps

gmt triangulate table_5.11 -Grawt.nc -R -I0.2
gmt grdfilter rawt.nc -Gfiltered.nc -D0 -Fc1
gmt grdview filtered.nc -R -J -B -Cex16.cpt -Qs -O -K -X3.5i >> $ps
echo "3.25 7 triangulate @~\256@~ grdfilter" | gmt pstext -R -J -O -K -N \
	-F+f18p,Times-Roman+jCB >> $ps
echo "3.2125 7.5 Gridding of Data" | gmt pstext -R0/10/0/10 -Jx1i -O -K -N \
	-F+f32p,Times-Roman+jCB -X-3.5i >> $ps
gmt psscale -Dx3.25i/-0.4i+jTC+w5i/0.25i+h -Cex16.cpt -O >> $ps

And here is example 16 in modern mode (GMT 6):

gmt begin ex16
	gmt set FONT_ANNOT_PRIMARY 9p FONT_TITLE 18p,Times-Roman
	gmt subplot begin 2x2 -M0.05i -Fs3.25i/0 -R0/6.5/-0.2/6.5 -Jx1i -SCb -SRl+t -Bwesn -Y2i -T"Gridding of Data"
		gmt contour @Table_5_11.txt -C@ex_16.cpt -I -B+t"contour (triangulate)" -c0,0
		
		gmt surface @Table_5_11.txt -R0/6.5/-0.2/6.5 -I0.2 -Graws0.nc
		gmt grdview raws0.nc -C@ex_16.cpt -Qs -B+t"surface (tension = 0)" -c0,1
		
		gmt surface @Table_5_11.txt -Graws5.nc -T0.5
		gmt grdview raws5.nc -C@ex_16.cpt -Qs -B+t"surface (tension = 0.5)" -c1,0
		
		gmt triangulate @Table_5_11.txt -Grawt.nc
		gmt grdfilter rawt.nc -Gfiltered.nc -D0 -Fc1
		gmt grdview filtered.nc -C@ex_16.cpt -Qs -B+t"triangulate @~\256@~ grdfilter" -c1,1
	gmt subplot end
	gmt colorbar -DJBC+w5i/0.25i+h -C@ex_16.cpt
gmt end show

Notice the lack of PostScript redirection, -O -K -R -J, and the new gmt subplot command (my personal favorite).

We’ve also re-designed our documentation to make it easier to follow: https://docs.generic-mapping-tools.org/6.0

As always, feedback is much appreciated! The documentation can always be improved so if you see a typo please fix it by clicking on “Edit on GitHub” at the top of the page.

Enjoy! :confetti_ball: