Spaces:
Running
Running
File size: 6,050 Bytes
c70cb8c 9346170 f61cb2d 1be7f91 c70cb8c e9de1b9 1be7f91 e9de1b9 1be7f91 c70cb8c 1be7f91 c70cb8c 1be7f91 e9de1b9 1be7f91 e9de1b9 1be7f91 e9de1b9 1be7f91 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 |
---
sql:
presse: data/presse.parquet
---
<header id="observablehq-header">
<style>
#observablehq-header a[href] {color: inherit;}
@container not (min-width: 640px) {
.hide-if-small {display: none;}
}
</style>
<div style="display: flex; align-items: center; gap: 0.5rem; height: 2.2rem; margin: -1.5rem -2rem 2rem -2rem; padding: 0.5rem 2rem; border-bottom: solid 1px var(--theme-foreground-faintest); font: 500 16px var(--sans-serif);">
<a href="https://observablehq.com/" style="display: flex; align-items: center;">
<svg width="22" height="22" viewBox="0 0 21.92930030822754 22.68549919128418" fill="currentColor">
<path d="M10.9646 18.9046C9.95224 18.9046 9.07507 18.6853 8.33313 18.2467C7.59386 17.8098 7.0028 17.1909 6.62722 16.4604C6.22789 15.7003 5.93558 14.8965 5.75735 14.0684C5.56825 13.1704 5.47613 12.2574 5.48232 11.3427C5.48232 10.6185 5.52984 9.92616 5.62578 9.26408C5.7208 8.60284 5.89715 7.93067 6.15391 7.24843C6.41066 6.56618 6.74143 5.97468 7.14438 5.47308C7.56389 4.9592 8.1063 4.54092 8.72969 4.25059C9.38391 3.93719 10.1277 3.78091 10.9646 3.78091C11.977 3.78091 12.8542 4.00021 13.5962 4.43879C14.3354 4.87564 14.9265 5.49454 15.3021 6.22506C15.6986 6.97704 15.9883 7.7744 16.1719 8.61712C16.3547 9.459 16.447 10.3681 16.447 11.3427C16.447 12.067 16.3995 12.7593 16.3035 13.4214C16.2013 14.1088 16.0206 14.7844 15.7644 15.437C15.4994 16.1193 15.1705 16.7108 14.7739 17.2124C14.3774 17.714 13.8529 18.1215 13.1996 18.4349C12.5463 18.7483 11.8016 18.9046 10.9646 18.9046ZM12.8999 13.3447C13.4242 12.8211 13.7159 12.0966 13.7058 11.3427C13.7058 10.5639 13.4436 9.89654 12.92 9.34074C12.3955 8.78495 11.7441 8.50705 10.9646 8.50705C10.1852 8.50705 9.53376 8.78495 9.00928 9.34074C8.49569 9.87018 8.21207 10.5928 8.22348 11.3427C8.22348 12.1216 8.48572 12.7889 9.00928 13.3447C9.53376 13.9005 10.1852 14.1784 10.9646 14.1784C11.7441 14.1784 12.3891 13.9005 12.8999 13.3447ZM10.9646 22.6855C17.0199 22.6855 21.9293 17.6068 21.9293 11.3427C21.9293 5.07871 17.0199 0 10.9646 0C4.90942 0 0 5.07871 0 11.3427C0 17.6068 4.90942 22.6855 10.9646 22.6855Z"></path>
</svg>
</a>
<div style="display: flex; flex-grow: 1; justify-content: space-between; align-items: baseline;">
<a href="https://observablehq.com/framework/">
<span class="hide-if-small">Observable</span> Framework
</a>
</div>
</div>
</header>
# Résistance
During the second world war the nazis occupied the northern half of France, and the collaborationist governement of Pétain was left to rule over the southern half (the “[zone libre](https://fr.wikipedia.org/wiki/Zone_libre)”). A lot of newspapers at that time were closed, others submitted to the occupiers (some even enthusiastically collaborated). At the same time, a range of clandestine publications started circulating, often associated with the resistance movements. When the country was Liberated in 1944, the most outrageously collaborationist press was dismantled, other newspapers changed their names and were sometimes taken over by new teams of resistance journalists. The most famous case is “Le Temps,” a daily newspaper that had been [publishing since 1861](<https://fr.wikipedia.org/wiki/Le_Temps_(quotidien_fran%C3%A7ais,_1861-1942)>) and had closed in 1942. Although not a collaborationist newspaper, it was not allowed to reopen, and its assets were transferred to create “Le Monde” on 19 December 1944, under Hubert Beuve-Méry.
```sql id=letemps echo
-- letemps --
SELECT year
, count(*) "count"
FROM presse
WHERE title = 'Le Temps'
AND year > DATE '1000-01-01'
GROUP BY ALL
```
```js echo
display(
Plot.plot({
caption: "Number of issues of Le Temps in the dataset, per year",
x: { nice: true },
y: { grid: true },
marks: [
Plot.ruleY([0]),
Plot.rectY(letemps, { y: "count", x: "year", interval: "year" }),
],
})
);
```
(Unfortunately, “Le Monde” is not part of the dataset.)
The number of titles that stopped or started publishing exploded in those fatal years. Note that many of these publications were short-lived, such as this example picked at random in the dataset: [Au-devant de la vie. Organe de l'Union des jeunes filles patriotes (UJFP), Région parisienne](https://gallica.bnf.fr/ark:/12148/bpt6k76208732?rk=21459;2). While the the UJFP (a resistance organisation of communist young women) published several titles during the war, only one issue was distributed under this title.
```sql id=years echo
-- years --
SELECT title
, MIN(year) AS start
, MAX(year) AS end
FROM presse
GROUP BY 1
```
```js echo
display(
Plot.plot({
color: { legend: true },
marks: [
Plot.rectY(
years,
Plot.binX(
{ y: "count" },
{
filter: (d) =>
d.start?.getUTCFullYear() >= 1930 &&
d.start?.getUTCFullYear() <= 1955,
x: "start",
fill: () => "started",
interval: "year",
}
)
),
Plot.rectY(
years,
Plot.binX(
{ y: "count" },
{
filter: (d) =>
d.end?.getUTCFullYear() >= 1930 &&
d.end?.getUTCFullYear() <= 1955,
x: "end",
fill: () => "ended",
mixBlendMode: "multiply",
interval: "year",
}
)
),
Plot.ruleY([0]),
],
})
);
```
Let’s focus on the ${start1944.length} publications that started publishing in 1944, and extract their titles and authors:
```sql id=start1944 echo
SELECT title
, IFNULL(NULLIF(author, 'None'), '') AS author
, YEAR(MIN(year)) AS start
, YEAR(MAX(year)) AS end
, COUNT(*) AS issues
FROM presse
GROUP BY ALL
HAVING start = 1944
ORDER BY issues DESC
```
```js
display(
Inputs.table(start1944, { format: { start: (d) => d, end: (d) => d } })
);
```
Going through these titles, one gets a pretty impressive picture of the publishing activity in this extreme historic period.
|