fao_data_info() shows the release you use and how
to cite it.
fao_areas() and fishing_area_map() show the
FAO major fishing areas and their subareas; the three other fishing area
functions describe one area. The examples use the Northeast
Atlantic (area 27); the last section shows the same analysis
for the Northwest Atlantic (area 21).
๐บ๏ธ The FAO major fishing areas
The FAO major fishing areas for statistical purposes are defined by
the Coordinating Working Party on Fishery Statistics (CWP): 19 marine
areas, and the inland waters of each continent. fao_areas()
lists them with their catch in the last year of the data and the link to
the official FAO map of each area, and saves a world map of the marine
areas labelled with their codes:
areas <- fao_areas()
show_table(areas[order(-areas$catch_last_year), c("area_code", "name_en", "type", "ocean", "catch_last_year", "share_pct")],
n = 30, digits = 1)| area_code | name_en | type | ocean | catch_last_year | share_pct | |
|---|---|---|---|---|---|---|
| 21 | 61 | Pacific, Northwest | marine | Pacific Ocean | 19067991.408 | 20.5 |
| 23 | 71 | Pacific, Western Central | marine | Pacific Ocean | 14105189.055 | 15.1 |
| 26 | 87 | Pacific, Southeast | marine | Pacific Ocean | 9453525.210 | 10.1 |
| 11 | 27 | Atlantic, Northeast | marine | Atlantic Ocean and adjacent seas | 7842194.162 | 8.4 |
| 4 | 04 | Asia - Inland waters | inland | NA | 7785533.070 | 8.4 |
| 19 | 57 | Indian Ocean, Eastern | marine | Indian Ocean | 6401679.921 | 6.9 |
| 18 | 51 | Indian Ocean, Western | marine | Indian Ocean | 6223934.387 | 6.7 |
| 13 | 34 | Atlantic, Eastern Central | marine | Atlantic Ocean and adjacent seas | 5099475.194 | 5.5 |
| 1 | 01 | Africa - Inland waters | inland | NA | 3656926.956 | 3.9 |
| 22 | 67 | Pacific, Northeast | marine | Pacific Ocean | 2551440.501 | 2.7 |
| 24 | 77 | Pacific, Eastern Central | marine | Pacific Ocean | 2349505.260 | 2.5 |
| 15 | 41 | Atlantic, Southwest | marine | Atlantic Ocean and adjacent seas | 1970436.942 | 2.1 |
| 16 | 47 | Atlantic, Southeast | marine | Atlantic Ocean and adjacent seas | 1475796.444 | 1.6 |
| 10 | 21 | Atlantic, Northwest | marine | Atlantic Ocean and adjacent seas | 1407262.000 | 1.5 |
| 12 | 31 | Atlantic, Western Central | marine | Atlantic Ocean and adjacent seas | 1077647.351 | 1.2 |
| 14 | 37 | Mediterranean and Black Sea | marine | Atlantic Ocean and adjacent seas | 1026111.034 | 1.1 |
| 17 | 48 | Atlantic, Antarctic | marine | Southern Ocean (Antarctic) | 466706.916 | 0.5 |
| 5 | 05 | Europe - Inland waters | inland | NA | 386122.976 | 0.4 |
| 25 | 81 | Pacific, Southwest | marine | Pacific Ocean | 381352.879 | 0.4 |
| 3 | 03 | America, South - Inland waters | inland | NA | 337398.156 | 0.4 |
| 2 | 02 | America, North - Inland waters | inland | NA | 117613.045 | 0.1 |
| 6 | 06 | Oceania - Inland waters | inland | NA | 20521.568 | 0.0 |
| 9 | 18 | Arctic Sea | marine | Atlantic Ocean and adjacent seas | 16604.000 | 0.0 |
| 20 | 58 | Indian Ocean, Antarctic | marine | Southern Ocean (Antarctic) | 10861.059 | 0.0 |
| 27 | 88 | Pacific, Antarctic | marine | Southern Ocean (Antarctic) | 2665.606 | 0.0 |
| 7 | 07 | Former USSR area - Inland waters | inland | NA | NA | NA |
| 8 | 08 | Antarctica - Inland waters | inland | NA | NA | NA |
Use these names (e.g.ย "Atlantic, Northwest") or codes in
the other functions. The official FAO maps (column fao_map)
are the maps of the FAO fishing
area maps page; the package links to them.
๐งญ fishing_area_map(): an area and its subareas
Large areas are divided into subareas, divisions and subdivisions; in
the Northeast Atlantic they are the ICES areas, from 27.1 (Barents Sea)
to 27.14 (East Greenland). fishing_area_map() maps one
marine area with these units, labelled with their codes, from the
boundaries bundled with the package (FAO 2024). When the ggOceanMaps
package (Vihtakari 2026) is installed, the map is drawn on its
bathymetric base map, with the depth of the ETOPO 2022 relief model
(NOAA NCEI 2022) bundled with ggOceanMaps; areas reaching beyond 60ยฐ of
latitude, such as area 27, are drawn in a polar stereographic
projection. Without ggOceanMaps, the land of Natural Earth is drawn in a
Lambert azimuthal equal-area projection centred on the area.
ne_atlantic <- fishing_area_map(27)
show_table(ne_atlantic$units, n = 20)| code | level | name_en |
|---|---|---|
| 27.1 | subarea | Barents Sea (Subarea 27.1) |
| 27.2 | subarea | Norwegian Sea, Spitzbergen, and Bear Island (Subarea 27.2) |
| 27.3 | subarea | Skagerrak, Kattegat, Sound, Belt Sea, and Baltic Sea (Subarea 27.3) |
| 27.4 | subarea | North Sea (Subarea 27.4) |
| 27.5 | subarea | Iceland and Faroes Grounds (Subarea 27.5) |
| 27.6 | subarea | Rockall, Northwest Coast of Scotland and North Ireland (Subarea 27.6) |
| 27.7 | subarea | Irish Sea, West of Ireland, Porcupine Bank, Eastern and Western English Channel, etc (Subarea 27.7) |
| 27.8 | subarea | Bay of Biscay (Subarea 27.8) |
| 27.9 | subarea | Portuguese Waters (Subarea 27.9) |
| 27.10 | subarea | Azores Grounds and Northeast Atlantic South (Subarea 27.10) |
| 27.12 | subarea | North of Azores (Subarea 27.12) |
| 27.14 | subarea | East Greenland (Subarea 27.14) |
ne_atlantic$fao_map # the official FAO map of the area
#> [1] "https://www.fao.org/fishery/docs/maps/fig_h2_27_0.gif"The sources of the map are in ne_atlantic$sources, to
cite with it:
show_table(ne_atlantic$sources)| layer | reference | url |
|---|---|---|
| boundaries | FAO (2024). FAO Major Fishing Areas for Statistical Purposes. Licence: CC-BY 4.0. | https://www.fao.org/fishery/geonetwork?uuid=ac02a460-da52-11dc-9d70-0017f293bd28 |
| base map | Vihtakari, M. (2026). ggOceanMaps: Plot Data on Oceanographic Maps using โggplot2โ. R package version 3.0.0. doi:10.32614/CRAN.package.ggOceanMaps | https://github.com/MikkoVihtakari/ggOceanMaps |
| land | Natural Earth. 1:10m Land and Minor Islands (public domain), as bundled with ggOceanMaps. | https://www.naturalearthdata.com/downloads/10m-physical-vectors/ |
| depth | NOAA National Centers for Environmental Information (2022). ETOPO 2022 15 Arc-Second Global Relief Model. doi:10.25921/fd45-gt74 | https://doi.org/10.25921/fd45-gt74 |
The divisions, here without depth:
fishing_area_map(27, level = "division", bathymetry = FALSE)All arguments of fishing_area_map():
| Argument | Meaning | Default |
|---|---|---|
area |
FAO major marine fishing area: code (e.g.ย 27) or
English name |
|
level |
Units drawn inside the area: "subarea",
"division", "subdivision" or
"none" (outline only) |
"subarea" |
bathymetry |
Show the depth (ggOceanMaps only) | TRUE |
labels |
Label the units with their codes | TRUE |
engine |
"auto" (ggOceanMaps when installed, else
"sf"), "ggOceanMaps" or "sf"
|
"auto" |
plot |
Save the map in figures/png/area/
|
TRUE |
table |
Save the table of units in tables/
|
TRUE |
lang |
Language of the map text: "en", "zh" or
"both"
|
NULL: the language of fao_settings()
|
pptx |
Also save the map as an editable PowerPoint file |
FALSE, or pptx of
fao_settings()
|
plot_show |
Also draw each chart in the plot window (e.g.ย the Plots pane of RStudio) as it is saved |
FALSE, or plot_show of
fao_settings()
|
1๏ธโฃ fishing_area_data(): catch of the area
FAO27 <- fishing_area_data("Atlantic, Northeast")It saves three charts in figures/png/:
| File | Chart |
|---|---|
fishing_trend.png |
Total catch of the area. With
timeseries_analysis = TRUE, the grey horizontal lines are
the mean catch of each period between breakpoints, and
the dashed lines mark the start of each period (see How the breakpoints are found) |
fishing_percentage.png |
The areaโs share of the world catch of all marine areas each year (for an inland area: of the world catch of all inland waters), and the average of these shares (red line) |
area_country_map.png |
Total catch of each country in the area over all years, on a world map |
and returns a list:
| Element | Content |
|---|---|
area_data |
Catch records of the area (all eight columns of the data): the input of the other functions |
coefs_data |
Periods between breakpoints of the total catch:
start_year, end_year and
intercept (mean catch of the period, in tonnes) |
act_world_map |
The map data, an sf object with the total catch of each country
(NULL with plot = FALSE) |
FAO27$coefs_data
#> # A tibble: 3 ร 3
#> start_year end_year intercept
#> <int> <int> <dbl>
#> 1 1950 1964 7251706.
#> 2 1965 2005 10855609.
#> 3 2006 2024 8806378.Options
fishing_area_data(
"Atlantic, Northeast",
timeseries_analysis = FALSE, # no breakpoints
area_color1 = "#9ecae1", # fill of the catch area
area_color2 = "#08519c", # its outline
hline_color = "#e6550d", # average line of the share chart
fill_scale = "blue", # palette of the map
lang = "zh" # Chinese chart text
)All arguments of fishing_area_data():
| Argument | Meaning | Default |
|---|---|---|
area_name |
FAO major fishing area, as named in the data (table above) | |
plot |
Save the three charts; FALSE only returns the data |
TRUE |
timeseries_analysis |
Draw the breakpoints and the mean catch of each period on the total
catch chart (coefs_data is returned either way) |
TRUE |
area_color1 |
Fill colour of the total catch | "grey80" |
area_alpha |
Transparency of that fill (0 transparent to 1 opaque) | 0.7 |
area_color2 |
Outline colour of the total catch | "black" |
line_color |
Colour of the line of the share chart | "black" |
line_alpha |
Transparency of that line | 0.8 |
line_linewidth |
Width of that line | 1.5 |
point_size |
Size of the points of the share chart | 2 |
hline_color |
Colour of the average line of the share chart | "red" |
hline_alpha |
Transparency of the average line | 0.7 |
hline_linewidth |
Width of the average line | 1.5 |
axis_text_size |
Size of the axis labels of the share chart, and of the axis titles of the total catch chart | 10 |
axis_text_face |
Font face of the axis titles of the total catch chart:
"plain", "bold", "italic" or
"bold.italic"
|
"plain" |
axis_title_size |
Size of the axis titles of the share chart | 12 |
axis_title_face |
Font face of the axis titles of the share chart and the map | "bold" |
strip_text_size, strip_text_face
|
Size and font face of panel titles; the charts of this function have no panels, so they have no visible effect |
12, "bold"
|
polygon_color |
Colour of the country borders on the map | "grey90" |
fill_scale |
Palette of the map, any choice of map_palette in
fao_settings() (e.g.ย "blue",
"YlOrRd", "viridis" or a vector of
colours) |
NULL: map_palette of
fao_settings() ("deep-orange") |
axis_title_size_map |
Size of the axis titles of the map | 14 |
axis_text_size_map |
Size of the axis labels (longitudes and latitudes) of the map | 12 |
legend_text_size_map |
Size of the legend text of the map | 12 |
ZH |
Older way of asking for Chinese: TRUE is
lang = "zh"
|
FALSE |
lang |
Language of the chart text: "en", "zh" or
"both"
|
NULL: "zh" if ZH = TRUE, else
the language of fao_settings()
|
data_version |
FAO release: "latest" (newest available),
"bundled" or a release such as "2026.1.0" (see
๐พ FAO data) |
"latest" |
pptx |
Also save the charts as editable PowerPoint files in
figures/pptx/
|
FALSE, or pptx of
fao_settings()
|
plot_show |
Also draw each chart in the plot window (e.g.ย the Plots pane of RStudio) as it is saved |
FALSE, or plot_show of
fao_settings()
|
2๏ธโฃ fishing_area_species(): main species
species <- fishing_area_species(FAO27$area_data, rank_range = 1:10)| File | Chart |
|---|---|
area/area_species.png |
Catch of the selected species over time |
area/area_species_wrap.png |
One panel per species with its share of the areaโs catch over all
years, a linear trend (dashed) and the breakpoints of its mean catch;
with timeseries_analysis = FALSE, a smooth curve instead of
the trend and breakpoints |
The function returns a list:
| Element | Content |
|---|---|
area_species |
Catch of every species item by year |
area_species_ranked |
Catch by year of the selected species, with their total catch and share |
area_species_ranked_total |
The selected species: total catch over all years
(Total_Tonnes) and share of the areaโs catch
(Percentage) |
coefs_data |
Breakpoints of each species: start_year,
end_year and intercept (mean catch of the
period, in tonnes) |
show_table(species$area_species_ranked_total)| ASFIS.species..Name. | Total_Tonnes | Percentage | Rank_Tonnes |
|---|---|---|---|
| Atlantic herring | 133,779,008 | 18.55 | 133,779,008 |
| Atlantic cod | 100,515,875 | 13.94 | 100,515,875 |
| Capelin | 72,254,558 | 10.02 | 72,254,558 |
| Blue whiting(=Poutassou) | 51,097,741 | 7.09 | 51,097,741 |
| Atlantic mackerel | 44,615,940 | 6.19 | 44,615,940 |
| Sandeels(=Sandlances) nei | 33,532,765 | 4.65 | 33,532,765 |
| European sprat | 28,491,530 | 3.95 | 28,491,530 |
| Saithe(=Pollock) | 27,734,472 | 3.85 | 27,734,472 |
| Haddock | 25,693,597 | 3.56 | 25,693,597 |
| Norway pout | 15,252,882 | 2.11 | 15,252,882 |
It also saves two tables in tables/:
species_ranked_table.csv (average catch per decade, catch
in each of the last five years, catch and share in the last year) and
species_coefs_data.csv (the breakpoints).
show_table(read.csv("tables/species_ranked_table.csv", fileEncoding = "UTF-8-BOM", check.names = FALSE), n = 5, digits = 0)| ASFIS.species..Name. | 1950s | 1960s | 1970s | 1980s | 1990s | 2000s | 2010s | 2020s | 2020 | 2021 | 2022 | 2023 | 2024 | total_2024_production | percentage_of_total_2024 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Atlantic cod | 1,675,240 | 1,610,620 | 1,772,437 | 1,424,846 | 1,104,442 | 814,172 | 1,162,071 | 975,521 | 1,051,293 | 1,116,132 | 1,039,707 | 908,068 | 762,408 | 762,408 | 10 |
| Atlantic herring | 2,478,450 | 2,737,960 | 1,078,316 | 1,080,178 | 1,732,866 | 1,945,565 | 1,592,207 | 1,464,718 | 1,514,865 | 1,554,649 | 1,568,174 | 1,435,049 | 1,250,851 | 1,250,851 | 16 |
| Atlantic mackerel | 100,330 | 414,570 | 603,160 | 580,576 | 654,196 | 574,634 | 1,022,817 | 1,022,622 | 1,018,792 | 1,076,697 | 1,043,653 | 1,069,949 | 904,017 | 904,017 | 12 |
| Blue whiting(=Poutassou) | 12,680 | 17,740 | 223,187 | 712,974 | 675,005 | 1,725,821 | 1,019,466 | 1,445,802 | 1,472,561 | 1,145,203 | 1,041,463 | 1,737,135 | 1,832,649 | 1,832,649 | 23 |
| Capelin | 43,550 | 314,260 | 2,294,263 | 1,838,143 | 1,230,845 | 867,671 | 480,992 | 311,462 | 57 | 204,767 | 679,198 | 504,595 | 168,693 | 168,693 | 2 |
Options
-
rank_rangelists the ranks shown:11:20shows the next ten species,c(5, 6)the fifth and the sixth. -
timeseries_analysis = FALSEreplaces the breakpoints by a smooth curve (smooth_method, default"loess"). -
h_valueis the minimum length of a period between breakpoints: a fraction of the series (default0.15) or a number of years (e.g.ย5). Larger values give fewer breakpoints; species with too short a series are skipped with a message.
fishing_area_species(FAO27$area_data, rank_range = 11:20, h_value = 5, lang = "both")All arguments of fishing_area_species(). โTime series
chartโ is area_species.png, โpanel chartโ is
area_species_wrap.png; the panel chart with breakpoints has
fixed line widths, text sizes and two columns, and only the
text_* arguments change it.
| Argument | Meaning | Default |
|---|---|---|
area_data |
Catch data of an area: fishing_area_data()$area_data or
any subset of load_fao_data()
|
|
rank_range |
Ranks of the species shown, by total catch over all years:
1:10 the ten largest, 11:20 the next ten,
c(5, 6) the fifth and the sixth |
1:10 |
plot |
Save the charts | TRUE |
table |
Save the two tables in tables/
|
TRUE |
timeseries_analysis |
TRUE: panel chart with linear trend and breakpoints;
FALSE: panel chart with a smooth curve |
TRUE |
h_value |
Minimum length of a period between breakpoints: a fraction of the
series or a number of years (the h of
strucchange::breakpoints()) |
0.15 |
line_width |
Width of the lines of the time series chart | 1.5 |
line_alpha |
Transparency of the lines of the time series chart and of the panel chart without breakpoints | 0.7 |
line_linewidth |
Width of the lines of the panel chart without breakpoints | 1.5 |
point_size |
Size of the points of the time series chart and of the panel chart without breakpoints | 1.8 |
point_alpha |
Transparency of these points | 0.7 |
point_shape |
Shape of these points (R point symbol, e.g.ย 1 open
circle, 16 filled circle) |
1 |
axis_text_size, axis_text_face
|
Size and font face of the axis labels (time series chart; y axis of the panel chart without breakpoints) |
10, "plain"
|
axis_title_size, axis_title_face
|
Size and font face of the axis titles (time series chart; panel chart without breakpoints) |
10, "bold"
|
strip_text_size, strip_text_face
|
Size and font face of the panel titles of the panel chart without breakpoints |
10, "bold"
|
smooth_method |
Smoothing method of the curve in the panel chart without
breakpoints, as in ggplot2::geom_smooth():
"loess", "lm", "gam", โฆ |
"loess" |
smooth_linetype |
Line type of that curve: "dashed",
"solid", "dotted", โฆ |
"dashed" |
text_hjust, text_vjust
|
Horizontal and vertical justification of the share label in each panel (it is anchored at 1957 and zero catch) |
0.9, -4
|
text_size, text_color
|
Size and colour of the share label |
4.5, "black"
|
facet_ncol |
Number of columns of the panel chart without breakpoints | 2 |
ZH |
Older way of asking for Chinese: TRUE is
lang = "zh"
|
FALSE |
lang |
Language of the chart text and names: "en",
"zh" or "both"
|
NULL: "zh" if ZH = TRUE, else
the language of fao_settings()
|
pptx |
Also save the charts as editable PowerPoint files in
figures/pptx/
|
FALSE, or pptx of
fao_settings()
|
plot_show |
Also draw each chart in the plot window (e.g.ย the Plots pane of RStudio) as it is saved |
FALSE, or plot_show of
fao_settings()
|
3๏ธโฃ fishing_area_country(): main countries
countries <- fishing_area_country(FAO27$area_data, rank_range = 1:10)It works like fishing_area_species(), by country:
| Output | Content |
|---|---|
area/area_country.png |
Catch of the selected countries over time |
area/area_country_wrap.png |
One panel per country with its share of the areaโs catch, a linear trend and the breakpoints (or a smooth curve) |
tables/country_ranked_table.csv |
Average catch per decade, catch in each of the last five years, catch and share in the last year |
tables/country_coefs_data.csv |
The breakpoints |
| Returned list |
area_country (catch of every country by year),
area_country_ranked, area_country_ranked_total
and coefs_data
|
show_table(countries$area_country_ranked_total)| Country..Name. | Total_Tonnes | Percentage | Rank_Tonnes |
|---|---|---|---|
| Norway | 175,537,274 | 24.34 | 175,537,274 |
| Iceland | 90,654,303 | 12.57 | 90,654,303 |
| Denmark | 85,470,967 | 11.85 | 85,470,967 |
| United Kingdom | 65,908,778 | 9.14 | 65,908,778 |
| Un. Sov. Soc. Rep. | 53,248,275 | 7.38 | 53,248,275 |
| France | 35,289,487 | 4.89 | 35,289,487 |
| Spain | 31,240,735 | 4.33 | 31,240,735 |
| Russian Federation | 30,914,334 | 4.29 | 30,914,334 |
| Germany | 27,722,268 | 3.84 | 27,722,268 |
| Faroe Islands | 23,481,732 | 3.26 | 23,481,732 |
All arguments of fishing_area_country(). As for the
species, the panel chart with breakpoints has fixed line widths, text
sizes and two columns.
| Argument | Meaning | Default |
|---|---|---|
area_data |
Catch data of an area: fishing_area_data()$area_data or
any subset of load_fao_data()
|
|
rank_range |
Ranks of the countries shown, by total catch over all years:
1:10 the ten largest, c(5, 6) the fifth and
the sixth |
1:10 |
plot |
Save the charts | TRUE |
table |
Save the two tables in tables/
|
TRUE |
timeseries_analysis |
TRUE: panel chart with linear trend and breakpoints;
FALSE: panel chart with a smooth curve |
TRUE |
h_value |
Minimum length of a period between breakpoints: a fraction of the series or a number of years | 0.15 |
line_width |
Width of the lines of the time series chart
(area_country.png) |
1.5 |
line_alpha |
Transparency of the lines of the time series chart and of the panel chart without breakpoints | 0.7 |
line_linewidth |
Width of the lines of the panel chart without breakpoints | 1.5 |
point_size |
Size of the points of the time series chart and of the panel chart without breakpoints | 1.8 |
point_alpha |
Transparency of these points | 0.7 |
point_shape |
Shape of these points (R point symbol) | 1 |
axis_text_size, axis_text_face
|
Size and font face of the axis labels (time series chart; y axis of the panel chart without breakpoints) |
10, "plain"
|
axis_title_size, axis_title_face
|
Size and font face of the axis titles (time series chart; panel chart without breakpoints) |
10, "bold"
|
strip_text_size, strip_text_face
|
Size and font face of the panel titles of the panel chart without breakpoints |
10, "bold"
|
smooth_method |
Smoothing method of the curve in the panel chart without
breakpoints, as in ggplot2::geom_smooth()
|
"loess" |
smooth_linetype |
Line type of that curve | "dashed" |
text_hjust, text_vjust
|
Justification of the share label in each panel |
0.9, -4
|
text_size, text_color
|
Size and colour of the share label |
4.5, "black"
|
facet_ncol |
Number of columns of the panel chart without breakpoints | 2 |
ZH |
Older way of asking for Chinese: TRUE is
lang = "zh"
|
FALSE |
lang |
Language of the chart text and names: "en",
"zh" or "both"
|
NULL: "zh" if ZH = TRUE, else
the language of fao_settings()
|
pptx |
Also save the charts as editable PowerPoint files |
FALSE, or pptx of
fao_settings()
|
plot_show |
Also draw each chart in the plot window (e.g.ย the Plots pane of RStudio) as it is saved |
FALSE, or plot_show of
fao_settings()
|
๐ How the breakpoints are found
The breakpoints divide a catch series into periods with different
mean catch. Each series is fitted with a model of constant mean
(catch ~ 1) in each period; the breakpoints that minimise
the residual sum of squares are found by dynamic programming (Bai and
Perron 2003), and the number of breakpoints is chosen by the Bayesian
information criterion (BIC), as done by
strucchange::breakpoints() (Zeileis et al.ย 2002, 2003).
Every period has at least h years: 15% of the series in
fishing_area_data(), and h_value in the other
functions.
| Function | Series analysed |
|---|---|
fishing_area_data() |
Total catch of the area in each year |
fishing_area_species() |
Catch of each species, over its longest run of consecutive years |
fishing_area_country() |
Catch of each country, over all years with records (a warning is given when years are missing) |
The breakpoints show when the level of the catch changed, not why: changes in fishing, in the stocks, in markets or in reporting can all move the catch.
๐ Another area: the Northwest Atlantic
Any FAO area works the same way. The Northwest Atlantic (area 21) lies off Canada, the United States and Greenland:
FAO21 <- fishing_area_data("Atlantic, Northwest")
fishing_area_country(FAO21$area_data, rank_range = 1:8)The catch of area 21 was largest in 1968 (4.6 million t) and was 1.4 million t in 2024. Its Atlantic cod fell from 564 thousand t in 1990 to 31 thousand t in 1995: the cod off Newfoundland and Labrador collapsed, and Canada closed the fishery in 1992 (Hutchings and Myers 1994).
Charts of different areas are saved under the same file names
(e.g.ย fishing_trend.png), so use one working folder per
area, e.g.ย setwd("reports/FAO21").
๐ References
Bai, J. and Perron, P. (2003). Computation and analysis of multiple structural change models. Journal of Applied Econometrics 18(1): 1โ22. doi:10.1002/jae.659
CWP (Coordinating Working Party on Fishery Statistics). CWP Handbook of Fishery Statistics: Main water areas (FAO major fishing areas). Rome: FAO. https://www.fao.org/cwp-on-fishery-statistics/handbook/general-concepts/main-water-areas/en/
FAO (2026). FishStat: Global capture production 1950โ2024 (release 2026.1.0). In: FishStatJ. https://www.fao.org/fishery/statistics/software/fishstatj/en. Licence: CC-BY-4.0. Release file: https://www.fao.org/fishery/static/Data/Capture_2026.1.0.zip
FAO. Fishing area maps. In: FAO Fisheries and Aquaculture Division [online]. Rome. https://www.fao.org/fishery/docs/maps/Default.htm
FAO (2024). FAO Major Fishing Areas for Statistical Purposes. In: FAO
Fisheries and Aquaculture Division [online]. Licence: CC-BY 4.0. https://www.fao.org/fishery/geonetwork?uuid=ac02a460-da52-11dc-9d70-0017f293bd28
(the area boundaries of the maps, bundled as
inst/extdata/FAO_AREAS_CWP.shp)
FAO (2026). Fishery and Aquaculture Statistics โ Yearbook 2024. FAO Yearbook of Fishery and Aquaculture Statistics. Rome: FAO. doi:10.4060/ce1217en
Hutchings, J.A. and Myers, R.A. (1994). What can be learned from the collapse of a renewable resource? Atlantic cod, Gadus morhua, of Newfoundland and Labrador. Canadian Journal of Fisheries and Aquatic Sciences 51(9): 2126โ2146. doi:10.1139/f94-214
Massicotte, P. and South, A. rnaturalearth: World Map Data from Natural Earth. R package. doi:10.32614/CRAN.package.rnaturalearth
Natural Earth. Admin 0 โ Details, map units, 1:50m (the country outlines of the maps). https://www.naturalearthdata.com/downloads/50m-cultural-vectors/50m-admin-0-details/
NOAA National Centers for Environmental Information (2022). ETOPO 2022 15 Arc-Second Global Relief Model. doi:10.25921/fd45-gt74
Pebesma, E. (2018). Simple features for R: standardized support for spatial vector data. The R Journal 10(1): 439โ446. doi:10.32614/RJ-2018-009
Vihtakari, M. (2026). ggOceanMaps: Plot Data on Oceanographic Maps using โggplot2โ. R package version 3.0.0. doi:10.32614/CRAN.package.ggOceanMaps. GitHub: https://github.com/MikkoVihtakari/ggOceanMaps
Wickham, H. (2016). ggplot2: Elegant Graphics for Data Analysis. New York: Springer. doi:10.1007/978-3-319-24277-4
Zeileis, A., Kleiber, C., Krรคmer, W. and Hornik, K. (2003). Testing and dating of structural changes in practice. Computational Statistics & Data Analysis 44(1โ2): 109โ123. doi:10.1016/S0167-9473(03)00030-6
Zeileis, A., Leisch, F., Hornik, K. and Kleiber, C. (2002). strucchange: an R package for testing for structural change in linear regression models. Journal of Statistical Software 7(2): 1โ38. doi:10.18637/jss.v007.i02
