diff --git a/pygmt_paper_numpy_datetime.ipynb b/pygmt_paper_numpy_datetime.ipynb new file mode 100755 index 0000000..3e36164 --- /dev/null +++ b/pygmt_paper_numpy_datetime.ipynb @@ -0,0 +1,232 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "32fadb57-786d-4979-9e6a-d8a7225063f2", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "" + ] + }, + "metadata": { + "image/png": { + "width": 500 + } + }, + "output_type": "display_data" + } + ], + "source": [ + "import datetime\n", + "\n", + "import numpy as np\n", + "import pygmt\n", + "\n", + "# -----------------------------------------------------------------------------\n", + "# Data retrieved from https://star-history.com/#GenericMappingTools/gmt&Date\n", + "# last access 2024-12-01\n", + "dates_gmt = np.array(\n", + " [\n", + " \"2018-08-13\",\n", + " \"2019-01-04\",\n", + " \"2019-03-01\",\n", + " \"2019-07-27\",\n", + " \"2019-11-29\",\n", + " \"2020-03-13\",\n", + " \"2020-07-08\",\n", + " \"2020-09-26\",\n", + " \"2021-03-15\",\n", + " \"2021-09-13\",\n", + " \"2022-02-16\",\n", + " \"2022-08-23\",\n", + " \"2023-04-13\",\n", + " \"2023-11-17\",\n", + " \"2024-05-29\",\n", + " \"2024-12-01\",\n", + " \"2025-04-23\",\n", + " ],\n", + " dtype=np.datetime64,\n", + ")\n", + "stars_gmt = np.array(\n", + " [0, 60, 120, 180, 240, 300, 360, 390, 450, 510, 570, 630, 690, 750, 810, 864, 884]\n", + ")\n", + "color_gmt = \"238/86/52\" # GMT red\n", + "\n", + "# Data retrieved from https://star-history.com/#GenericMappingTools/GMT.jl&Date\n", + "# last access 2025-01-05\n", + "dates_jl = np.array(\n", + " [\n", + " \"2016-02-25\",\n", + " \"2018-03-12\",\n", + " \"2018-11-19\",\n", + " \"2019-07-10\",\n", + " \"2020-01-11\",\n", + " \"2020-05-05\",\n", + " \"2020-11-01\",\n", + " \"2021-04-05\",\n", + " \"2021-09-26\",\n", + " \"2021-12-15\",\n", + " \"2022-03-08\",\n", + " \"2022-09-07\",\n", + " \"2023-06-27\",\n", + " \"2023-11-13\",\n", + " \"2024-03-14\",\n", + " \"2024-11-01\",\n", + " \"2025-01-05\",\n", + " \"2025-04-23\",\n", + " ],\n", + " dtype=np.datetime64,\n", + ")\n", + "stars_jl = np.array(\n", + " [1, 14, 27, 40, 53, 66, 79, 92, 105, 118, 131, 144, 157, 170, 183, 196, 199, 205]\n", + ")\n", + "color_jl = \"170/121/193\" # Julia purple\n", + "\n", + "# Data retrieved from https://star-history.com/#GenericMappingTools/pygmt&Date\n", + "# last access 2024-12-01\n", + "dates_py = np.array(\n", + " [\n", + " \"2017-03-30\",\n", + " \"2017-08-05\",\n", + " \"2018-05-24\",\n", + " \"2019-01-11\",\n", + " \"2019-12-10\",\n", + " \"2020-05-18\",\n", + " \"2020-12-29\",\n", + " \"2021-06-22\",\n", + " \"2021-12-01\",\n", + " \"2022-03-06\",\n", + " \"2022-07-26\",\n", + " \"2023-02-16\",\n", + " \"2023-09-11\",\n", + " \"2023-11-11\",\n", + " \"2024-05-11\",\n", + " \"2024-12-01\",\n", + " \"2025-04-23\",\n", + " ],\n", + " dtype=np.datetime64,\n", + ")\n", + "stars_py = np.array(\n", + " [0, 30, 90, 150, 210, 240, 300, 360, 420, 450, 510, 570, 630, 660, 720, 769, 795]\n", + ")\n", + "color_py = \"63/124/173\" # Python blue\n", + "\n", + "\n", + "# -----------------------------------------------------------------------------\n", + "fig = pygmt.Figure()\n", + "fig.basemap(\n", + " projection=\"X12c/6c\",\n", + " region=[datetime.date(2016, 1, 1), datetime.date(2025, 6, 30), 0, 1000],\n", + " frame=[\"x+lyear\", \"y+lGitHub stars\"],\n", + ")\n", + "\n", + "args_dots = {\"style\": \"c0.2c\", \"no_clip\": True}\n", + "args_dots = {\"style\": \"a0.35c\", \"no_clip\": True}\n", + "\n", + "fig.plot(x=dates_gmt, y=stars_gmt, pen=color_gmt, no_clip=True)\n", + "fig.plot(x=dates_gmt, y=stars_gmt, fill=color_gmt, label=\"GMT\", **args_dots)\n", + "\n", + "fig.plot(x=dates_jl, y=stars_jl, pen=color_jl, no_clip=True)\n", + "fig.plot(x=dates_jl, y=stars_jl, fill=color_jl, label=\"GMT.jl\", **args_dots)\n", + "\n", + "fig.plot(x=dates_py, y=stars_py, pen=color_py, no_clip=True)\n", + "fig.plot(x=dates_py, y=stars_py, fill=color_py, label=\"PyGMT\", **args_dots)\n", + "\n", + "fig.legend(position=\"jLT\")\n", + "fig.show(dpi=150)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "debc6828-daa4-4bc8-9659-8be3f67889fe", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "" + ] + }, + "metadata": { + "image/png": { + "width": 500 + } + }, + "output_type": "display_data" + } + ], + "source": [ + "# -----------------------------------------------------------------------------\n", + "# Temporal alignment\n", + "\n", + "Ddates_pyjl = dates_py[0] - dates_jl[0] # Julia first on GitHub -> use as reference zero\n", + "Ddates_gmtjl = dates_gmt[0] - dates_jl[0]\n", + "\n", + "dates_py_offset = dates_py - Ddates_pyjl\n", + "dates_gmt_offset = dates_gmt - Ddates_gmtjl\n", + "\n", + "dates_jl_zero_days = dates_jl - dates_jl[0]\n", + "dates_py_zero_days = dates_py_offset - dates_jl[0]\n", + "dates_gmt_zero_days = dates_gmt_offset - dates_jl[0]\n", + "\n", + "dates_jl_zero_years = dates_jl_zero_days.astype(float) / 365 # otherwise only int years\n", + "dates_py_zero_years = dates_py_zero_days.astype(float) / 365 # no consideration of Schaltjahr\n", + "dates_gmt_zero_years = dates_gmt_zero_days.astype(float) / 365\n", + "\n", + "\n", + "# -----------------------------------------------------------------------------\n", + "fig = pygmt.Figure()\n", + "fig.basemap(\n", + " projection=\"X12c/6c\",\n", + " # region=[0, 3700, 0, 1000],\n", + " # frame=[\"x+lDays\", \"y+lGitHub stars\"],\n", + " region=[0, 10, 0, 1000],\n", + " frame=[\"x+lyears on GitHub\", \"y+lGitHub stars\"],\n", + ")\n", + "\n", + "args_dots = {\"style\": \"c0.2c\", \"no_clip\": True}\n", + "args_dots = {\"style\": \"a0.35c\", \"no_clip\": True}\n", + "\n", + "fig.plot(x=dates_gmt_zero_years, y=stars_gmt, pen=color_gmt, no_clip=True)\n", + "fig.plot(x=dates_gmt_zero_years, y=stars_gmt, fill=color_gmt, label=\"GMT\", **args_dots)\n", + "\n", + "fig.plot(x=dates_jl_zero_years, y=stars_jl, pen=color_jl, no_clip=True)\n", + "fig.plot(x=dates_jl_zero_years, y=stars_jl, fill=color_jl, label=\"GMT.jl\", **args_dots)\n", + "\n", + "fig.plot(x=dates_py_zero_years, y=stars_py, pen=color_py, no_clip=True)\n", + "fig.plot(x=dates_py_zero_years, y=stars_py, fill=color_py, label=\"PyGMT\", **args_dots)\n", + "\n", + "fig.legend(position=\"jLT\")\n", + "fig.show(dpi=150)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/star_history_20241201_gmt.csv b/star_history_20241201_gmt.csv new file mode 100755 index 0000000..e2385c5 --- /dev/null +++ b/star_history_20241201_gmt.csv @@ -0,0 +1,17 @@ +Repository,Date,Stars +GenericMappingTools/gmt,Mon Aug 13 2018 04:28:37 GMT+0200 (Mitteleuropäische Sommerzeit),0 +GenericMappingTools/gmt,Fri Jan 04 2019 14:37:11 GMT+0100 (Mitteleuropäische Normalzeit),60 +GenericMappingTools/gmt,Fri Mar 01 2019 00:16:39 GMT+0100 (Mitteleuropäische Normalzeit),120 +GenericMappingTools/gmt,Sat Jul 27 2019 20:49:03 GMT+0200 (Mitteleuropäische Sommerzeit),180 +GenericMappingTools/gmt,Wed Nov 27 2019 10:37:17 GMT+0100 (Mitteleuropäische Normalzeit),240 +GenericMappingTools/gmt,Fri Mar 13 2020 09:00:52 GMT+0100 (Mitteleuropäische Normalzeit),300 +GenericMappingTools/gmt,Wed Jul 08 2020 07:11:03 GMT+0200 (Mitteleuropäische Sommerzeit),360 +GenericMappingTools/gmt,Sat Sep 26 2020 10:50:10 GMT+0200 (Mitteleuropäische Sommerzeit),390 +GenericMappingTools/gmt,Mon Mar 15 2021 20:40:17 GMT+0100 (Mitteleuropäische Normalzeit),450 +GenericMappingTools/gmt,Mon Sep 13 2021 05:07:09 GMT+0200 (Mitteleuropäische Sommerzeit),510 +GenericMappingTools/gmt,Wed Feb 16 2022 20:06:07 GMT+0100 (Mitteleuropäische Normalzeit),570 +GenericMappingTools/gmt,Tue Aug 23 2022 09:57:25 GMT+0200 (Mitteleuropäische Sommerzeit),630 +GenericMappingTools/gmt,Thu Apr 13 2023 11:50:55 GMT+0200 (Mitteleuropäische Sommerzeit),690 +GenericMappingTools/gmt,Fri Nov 17 2023 21:39:49 GMT+0100 (Mitteleuropäische Normalzeit),750 +GenericMappingTools/gmt,Wed May 29 2024 11:51:14 GMT+0200 (Mitteleuropäische Sommerzeit),810 +GenericMappingTools/gmt,Sun Dec 01 2024 14:28:14 GMT+0100 (Mitteleuropäische Normalzeit),864 diff --git a/star_history_20241201_pygmt.csv b/star_history_20241201_pygmt.csv new file mode 100755 index 0000000..286eb4f --- /dev/null +++ b/star_history_20241201_pygmt.csv @@ -0,0 +1,17 @@ +Repository,Date,Stars +GenericMappingTools/pygmt,Thu Mar 30 2017 18:55:38 GMT+0200 (Mitteleuropäische Sommerzeit),0 +GenericMappingTools/pygmt,Sat Aug 05 2017 21:04:13 GMT+0200 (Mitteleuropäische Sommerzeit),30 +GenericMappingTools/pygmt,Thu May 24 2018 23:39:25 GMT+0200 (Mitteleuropäische Sommerzeit),90 +GenericMappingTools/pygmt,Fri Jan 11 2019 02:33:14 GMT+0100 (Mitteleuropäische Normalzeit),150 +GenericMappingTools/pygmt,Tue Dec 10 2019 05:45:03 GMT+0100 (Mitteleuropäische Normalzeit),210 +GenericMappingTools/pygmt,Mon May 18 2020 12:13:40 GMT+0200 (Mitteleuropäische Sommerzeit),240 +GenericMappingTools/pygmt,Tue Dec 29 2020 08:31:55 GMT+0100 (Mitteleuropäische Normalzeit),300 +GenericMappingTools/pygmt,Tue Jun 22 2021 04:02:32 GMT+0200 (Mitteleuropäische Sommerzeit),360 +GenericMappingTools/pygmt,Wed Dec 01 2021 22:11:16 GMT+0100 (Mitteleuropäische Normalzeit),420 +GenericMappingTools/pygmt,Sun Mar 06 2022 05:54:30 GMT+0100 (Mitteleuropäische Normalzeit),450 +GenericMappingTools/pygmt,Tue Jul 26 2022 21:12:34 GMT+0200 (Mitteleuropäische Sommerzeit),510 +GenericMappingTools/pygmt,Thu Feb 16 2023 19:01:51 GMT+0100 (Mitteleuropäische Normalzeit),570 +GenericMappingTools/pygmt,Mon Sep 11 2023 19:42:26 GMT+0200 (Mitteleuropäische Sommerzeit),630 +GenericMappingTools/pygmt,Sat Nov 11 2023 20:13:05 GMT+0100 (Mitteleuropäische Normalzeit),660 +GenericMappingTools/pygmt,Sat May 11 2024 02:54:10 GMT+0200 (Mitteleuropäische Sommerzeit),720 +GenericMappingTools/pygmt,Sun Dec 01 2024 11:59:19 GMT+0100 (Mitteleuropäische Normalzeit),769 diff --git a/star_history_20250105_gmtjl.csv b/star_history_20250105_gmtjl.csv new file mode 100755 index 0000000..a2b7865 --- /dev/null +++ b/star_history_20250105_gmtjl.csv @@ -0,0 +1,18 @@ +Repository,Date,Stars +GenericMappingTools/GMT.jl,Thu Feb 25 2016 04:55:51 GMT+0100 (Mitteleuropäische Normalzeit),1 +GenericMappingTools/GMT.jl,Mon Mar 12 2018 16:47:02 GMT+0100 (Mitteleuropäische Normalzeit),14 +GenericMappingTools/GMT.jl,Mon Nov 19 2018 20:54:02 GMT+0100 (Mitteleuropäische Normalzeit),27 +GenericMappingTools/GMT.jl,Wed Jul 10 2019 05:38:53 GMT+0200 (Mitteleuropäische Sommerzeit),40 +GenericMappingTools/GMT.jl,Sat Jan 11 2020 14:44:39 GMT+0100 (Mitteleuropäische Normalzeit),53 +GenericMappingTools/GMT.jl,Tue May 05 2020 01:51:30 GMT+0200 (Mitteleuropäische Sommerzeit),66 +GenericMappingTools/GMT.jl,Sun Nov 01 2020 01:43:27 GMT+0100 (Mitteleuropäische Normalzeit),79 +GenericMappingTools/GMT.jl,Mon Apr 05 2021 13:30:29 GMT+0200 (Mitteleuropäische Sommerzeit),92 +GenericMappingTools/GMT.jl,Sun Sep 26 2021 08:04:30 GMT+0200 (Mitteleuropäische Sommerzeit),105 +GenericMappingTools/GMT.jl,Wed Dec 15 2021 23:23:39 GMT+0100 (Mitteleuropäische Normalzeit),118 +GenericMappingTools/GMT.jl,Tue Mar 08 2022 07:41:23 GMT+0100 (Mitteleuropäische Normalzeit),131 +GenericMappingTools/GMT.jl,Fri Oct 07 2022 09:28:14 GMT+0200 (Mitteleuropäische Sommerzeit),144 +GenericMappingTools/GMT.jl,Tue Jun 27 2023 01:48:17 GMT+0200 (Mitteleuropäische Sommerzeit),157 +GenericMappingTools/GMT.jl,Mon Nov 13 2023 05:20:11 GMT+0100 (Mitteleuropäische Normalzeit),170 +GenericMappingTools/GMT.jl,Thu Mar 14 2024 14:49:09 GMT+0100 (Mitteleuropäische Normalzeit),183 +GenericMappingTools/GMT.jl,Fri Nov 01 2024 19:08:07 GMT+0100 (Mitteleuropäische Normalzeit),196 +GenericMappingTools/GMT.jl,Sun Jan 05 2025 16:59:17 GMT+0100 (Mitteleuropäische Normalzeit),199