Last data update: 24 sept. 2026, 06:33
Last compile: 24 sept. 2026, 06:42
sel <- c("France", "Italie", "Espagne", "Grèce", "Portugal", "Belgique")
d <- spreads |> filter(country %in% sel)
if (n_distinct(d$scraped_date) < 2) {
knitr::asis_output(paste0(
"_Série trop courte (", n_distinct(d$scraped_date),
" relevé) — le graphique se remplira au fil des instantanés quotidiens._"))
} else {
d <- add_flag_color(d, "country_en")
span <- as.numeric(diff(range(d$scraped_date)))
gap <- 0.07 * diff(range(d$spread_bund, na.rm = TRUE))
ends <- d |> group_by(country) |> slice_max(scraped_date, n = 1) |>
ungroup() |> arrange(spread_bund)
y <- ends$spread_bund
for (i in seq_along(y)[-1]) if (y[i] - y[i - 1] < gap) y[i] <- y[i - 1] + gap
ends$y_lab <- y - mean(y - ends$spread_bund)
ggplot(d, aes(scraped_date, spread_bund)) +
geom_line(aes(color = color, group = country), linewidth = 0.7) +
ggimage::geom_image(
data = ends, inherit.aes = FALSE, na.rm = TRUE,
aes(x = scraped_date + span * 0.03 + 0.4, y = y_lab, image = flag_img),
size = 0.05, asp = 1.5) +
geom_text(
data = ends,
aes(x = scraped_date + span * 0.07 + 0.9, y = y_lab, label = country,
color = color),
hjust = 0, size = 3) +
scale_color_identity() +
scale_y_continuous(breaks = seq(0, 200, 10)) +
scale_x_date(expand = expansion(mult = c(0.02, 0.24)),
breaks = seq.Date(Sys.Date() - days(20), Sys.Date()),
labels = date_format("%d %b %Y")) +
theme_minimal() + xlab("") + ylab("Spread vs Bund 10 ans (pb)") +
theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))
}
euro <- c("France", "Italie", "Espagne", "Pays-Bas", "Grèce")
spreads |>
filter(scraped_date == last_day, country %in% euro) |>
add_flag_color("country_en") |>
bar_flags(flag_size = 0.07)
euro <- c("France", "Italie", "Espagne", "Portugal", "Belgique", "Pays-Bas",
"Grèce", "Autriche", "Irlande", "Finlande", "Slovaquie", "Slovénie",
"Lituanie", "Chypre", "Croatie", "Malte")
spreads |>
filter(scraped_date == last_day, country %in% euro) |>
add_flag_color("country_en") |>
bar_flags()
spreads |>
filter(scraped_date == last_day, !is.na(spread_bund)) |>
add_flag_color("country_en") |>
bar_flags(flag_size = 0.055, asp = 0.30, txt_size = 2, label_size = 7)
tbl <- spreads |>
filter(scraped_date == last_day) |>
mutate(Pays = ifelse(
is.na(slug), country,
sprintf('<span style="white-space:nowrap"><img src="../../icon/flag/round/%s.png" width="17" style="vertical-align:-3px;margin-right:6px">%s</span>',
slug, country))) |>
transmute(Pays,
`Taux 10 ans` = yield,
`Var.` = chg,
`Vs. Bund` = spread_bund,
`Vs. T-Note` = spread_tnote,
Heure = quote_time) |>
arrange(`Vs. Bund`)
if (knitr::is_html_output()) {
DT::datatable(tbl, filter = "top", rownames = FALSE, escape = FALSE,
options = list(columnDefs = list(list(width = "150px", targets = 0))))
} else {
tbl |> mutate(Pays = gsub("<[^>]*>", "", Pays))
}Source : investing.com, instantané du 24 septembre 2026.