File:Timeline of Israeli hostages in Gaza since 2023.svg
Summary
Description |
English: Timeline showing the number of Israeli hostages held in Gaza since the October 7, 2023 Hamas attack.
עברית: גרף המתאר את מספר החטופים הישראלים בעזה מאז מתקפת חמאס ב־7 באוקטובר 2023. |
Date | |
Source | Own work |
Author | Oriaaaass~commonswiki |
SVG development | |
Source code | Python codeimport matplotlib.pyplot as plt
from datetime import datetime, timedelta
# Initial number of hostages and starting date
initial_hostages = 255
start_date = datetime.strptime("07/10/2023", "%d/%m/%Y")
# List of release events: (date, number of hostages released)
releases = [
("21/10/2023", 2),
("24/10/2023", 2),
("30/10/2023", 1),
("15/11/2023", 1),
("16/11/2023", 1),
("24/11/2023", 24),
("25/11/2023", 17),
("26/11/2023", 17),
("27/11/2023", 11),
("28/11/2023", 12),
("29/11/2023", 16),
("30/11/2023", 9),
("12/12/2023", 2),
("15/12/2023", 6),
("12/02/2024", 2),
("06/04/2024", 1),
("17/05/2024", 4),
("24/05/2024", 3),
("08/06/2024", 4),
("24/07/2024", 5),
("20/08/2024", 6),
("27/08/2024", 1),
("28/08/2024", 1),
("31/08/2024", 6),
("04/12/2024", 1),
("07/01/2025", 2),
("18/01/2025", 1),
("19/01/2025", 3),
("25/01/2025", 4),
("30/01/2025", 8),
("01/02/2025", 3),
("08/02/2025", 3),
("15/02/2025", 3),
("20/02/2025", 3),
("22/02/2025", 7),
("27/02/2025", 4),
("12/05/2025", 1),
("05/06/2025", 2),
("06/06/2025", 1),
("11/06/2025", 2),
("21/06/2025", 3),
("27/06/2025", 0),
]
# Define key events: (date, label)
events = [
("07/10/2023", "Hamas Attack on Israel"),
("24/11/2023", "1st Hostage Release Deal"),
("19/01/2025", "2nd Hostage Release Deal"),
]
# Convert and sort releases
releases = [(datetime.strptime(date, "%d/%m/%Y"), count) for date, count in releases]
releases.sort()
# Convert events to datetime
events = [(datetime.strptime(date, "%d/%m/%Y"), label) for date, label in events]
# Prepare data for the plotting
dates = [start_date]
hostages_remaining = [initial_hostages]
current_hostages = initial_hostages
for date, count in releases:
if dates[-1] != date:
dates.append(date)
hostages_remaining.append(current_hostages)
current_hostages -= count
dates.append(date)
hostages_remaining.append(current_hostages)
# Plotting
plt.figure(figsize=(10, 7))
plt.step(dates, hostages_remaining, where='post', linewidth=2, label="Remaining Hostages")
# Add vertical event lines and labels
for date, label in events:
plt.axvline(date, color='blue', linestyle='--', linewidth=1)
plt.text(date + timedelta(days=2), 5, label, rotation=90,
verticalalignment='bottom', horizontalalignment='left', color='blue')
plt.title("Number of Hostages in Gaza Over Time")
plt.ylabel("Hostages Remaining")
plt.ylim(bottom=0)
plt.grid(True)
plt.xlim(left=start_date)
plt.tight_layout()
plt.savefig("Timeline_of_Israeli_hostages_in_Gaza_since_2023.svg", format="svg")
# Show the plot
plt.show()
|
Licensing
I, the copyright holder of this work, hereby publish it under the following license:
![]() ![]() |
This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication. |
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of their rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.
|