Georgios Karamanis's Avatar

Georgios Karamanis

@karaman.is

Dataviz designer, psychiatrist, PhD https://karaman.is

2,681
Followers
190
Following
307
Posts
11.11.2023
Joined
Posts Following

Latest posts by Georgios Karamanis @karaman.is

A horizontal bar chart showing total Science Foundation Ireland grant funding per year from 2005 to 2024. Each bar contains the top 3 most distinctive words from proposal titles that year, ranked by TF-IDF, with superscript numbers indicating how many proposals used each word. Notable years include 2019 (peak funding), 2020 (covid, 19, sars), and 2013 (erc, funds, isca).

A horizontal bar chart showing total Science Foundation Ireland grant funding per year from 2005 to 2024. Each bar contains the top 3 most distinctive words from proposal titles that year, ranked by TF-IDF, with superscript numbers indicating how many proposals used each word. Notable years include 2019 (peak funding), 2020 (covid, 19, sars), and 2013 (erc, funds, isca).

This week's #TidyTuesday is about Science Foundation Ireland grants. Used {tidytext} to find the most distinctive words in proposal titles, then fitted them inside the bars with {ggfittext}. You won't believe 2020's most distinctive words

Code: github.com/gkaramanis/t...

#RStats #dataviz

27.02.2026 12:44 πŸ‘ 9 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Video thumbnail

New Zealand once had over 20 sheep per person. Animated this week's #TidyTuesday data showing how sheep numbers, human population, and their ratio have changed from 1960 to 2024. The flock has been shrinking while the population keeps growing!

Code: github.com/gkaramanis/t...

#RStats #dataviz

20.02.2026 14:15 πŸ‘ 19 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0
A map of Italy with eight highlighted regions hosting 2026 Winter Olympics venues. Eight cities are labeled and connected with accent-colored lines. Detailed regional maps show venue locations with medal event counts in labeled boxes. Subtle elevation relief rendered as alpha transparency reveals topography across all maps.

A map of Italy with eight highlighted regions hosting 2026 Winter Olympics venues. Eight cities are labeled and connected with accent-colored lines. Detailed regional maps show venue locations with medal event counts in labeled boxes. Subtle elevation relief rendered as alpha transparency reveals topography across all maps.

Mapped all the 2026 Winter Olympics venues across Italy for this week's #TidyTuesday. Started simple but kept adding stuff because I couldn't stop myself, had way too much fun working through it all!

Code: github.com/gkaramanis/t...

#RStats #dataviz #olympics

13.02.2026 17:45 πŸ‘ 19 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

Relatable indeed! The truly correct response though would be to not say anything at all πŸ˜…

12.02.2026 14:55 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
A faceted tile plot with 18 edible plants, each name drawn in chunky bitmap font. Colored tiles stretch across the temperature range in degrees Celsius for each plant, with the minimum and maximum values labeled. Cultivation type sits just below the plant name. The plot shows how growing temperature ranges vary from plant to plant.

A faceted tile plot with 18 edible plants, each name drawn in chunky bitmap font. Colored tiles stretch across the temperature range in degrees Celsius for each plant, with the minimum and maximum values labeled. Cultivation type sits just below the plant name. The plot shows how growing temperature ranges vary from plant to plant.

This week’s #TidyTuesday was about edible plants. Not sure if this plot makes much sense, but I had fun experimenting with bitmap fonts and color gradients for the plant names and temperature ranges.

Code: github.com/gkaramanis/t...

#RStats #dataviz

08.02.2026 07:27 πŸ‘ 20 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Stacked bar chart showing the distribution of Brazilian companies by owner qualification and company size. Bars are sized by log-scaled total counts, with three categories: micro-enterprises, small-enterprises, and other. Owner qualifications are ordered from those with the highest to lowest proportion of micro-enterprises.

Stacked bar chart showing the distribution of Brazilian companies by owner qualification and company size. Bars are sized by log-scaled total counts, with three categories: micro-enterprises, small-enterprises, and other. Owner qualifications are ordered from those with the highest to lowest proportion of micro-enterprises.

For last week's #TidyTuesday, I made a plot about the composition of micro-enterprises, small businesses, and larger companies across different owner types in the Brazilian business registry.

Code: github.com/gkaramanis/t...

#RStats #dataviz

02.02.2026 17:31 πŸ‘ 7 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
a cartoon character with a star in his eyes is smiling Alt: a cartoon character with a star in his eyes is smiling

Happened to me, too! πŸ˜…

26.01.2026 06:43 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Network visualization showing the most frequently mentioned word stems in NASA's Astronomy Picture of the Day descriptions. Each large star represents a word, sized by frequency and grouped around the central concept it relates to (shown as small gold points). The most common words are words related to stars, light, image and galaxy.

Network visualization showing the most frequently mentioned word stems in NASA's Astronomy Picture of the Day descriptions. Each large star represents a word, sized by frequency and grouped around the central concept it relates to (shown as small gold points). The most common words are words related to stars, light, image and galaxy.

What words define NASA's Astronomy Picture of the Day? For this week's #TidyTuesday, I analyzed decades of APOD descriptions to find the 50 most common concepts and their connections.

Code: github.com/gkaramanis/t...

#RStats #dataviz

23.01.2026 14:19 πŸ‘ 13 πŸ” 2 πŸ’¬ 2 πŸ“Œ 0
Video thumbnail

Having some fun recreating images in ggplot with the help of magick. This was made with geom_ribbon and stitched together with magick::image_animate.

#Rstats #dataviz

22.01.2026 10:15 πŸ‘ 37 πŸ” 6 πŸ’¬ 1 πŸ“Œ 2
Preview
a man wearing sunglasses and a colorful shirt is making a surprised face and saying wow . Alt: a man wearing sunglasses and a colorful shirt is making a surprised face and saying wow .
22.01.2026 10:17 πŸ‘ 5 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Thanks!

18.01.2026 12:05 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Composite visualization showing Africa's linguistic diversity. Left: Treemap showing African languages sized by number of native speakers and colored by language family. Right: Geofaceted map of African countries showing the main languages in each country, also colored by language family. Niger–Congo (435 million native speakers, 377 languages), Afroasiatic (333 million speakers, 21 languages), and Nilo-Saharan (44 million, 69 languages) are the largest language families. Most African countries are multilingual and the 'main' language is often just one among many.

Composite visualization showing Africa's linguistic diversity. Left: Treemap showing African languages sized by number of native speakers and colored by language family. Right: Geofaceted map of African countries showing the main languages in each country, also colored by language family. Niger–Congo (435 million native speakers, 377 languages), Afroasiatic (333 million speakers, 21 languages), and Nilo-Saharan (44 million, 69 languages) are the largest language families. Most African countries are multilingual and the 'main' language is often just one among many.

Africa has over 2 000 languages. For this week's #TidyTuesday, I tried to visualize this extraordinary diversity with a treemap and a geofaceted map

Code: github.com/gkaramanis/t...

#RStats #dataviz

18.01.2026 07:38 πŸ‘ 51 πŸ” 3 πŸ’¬ 2 πŸ“Œ 1
Waffle chart showing James Bond's weekly alcohol consumption across 12 novels. Each gold square represents one unit of alcohol. The chart is faceted by book title and year of publication, with consumption rates ranging from 52.4 units per week (Goldfinger) to 132 units per week (You Only Live Twice). Numbers labelled on each facet show the weekly consumption total.

Waffle chart showing James Bond's weekly alcohol consumption across 12 novels. Each gold square represents one unit of alcohol. The chart is faceted by book title and year of publication, with consumption rates ranging from 52.4 units per week (Goldfinger) to 132 units per week (You Only Live Twice). Numbers labelled on each facet show the weekly consumption total.

For this week's #TidyTuesday, I visualized James Bond's drinking habits across the 12 novels using a waffle chart, based on the 2013 study "Were James Bond's drinks shaken because of alcohol induced tremor?"

Code: github.com/gkaramanis/t...

#RStats #dataviz

11.01.2026 15:25 πŸ‘ 23 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0
Text-based generative art showing 'genuary' with simulated lighting and shadow effects. Letters appear white while the background shows banded color gradients and directional shadows.

Text-based generative art showing 'genuary' with simulated lighting and shadow effects. Letters appear white while the background shows banded color gradients and directional shadows.

Genuary 2026, Day 5: Write "Genuary". Avoid using a font

#RStats code: github.com/gkaramanis/a...

#rtistry #genuary #genuary5 #creativecoding

05.01.2026 14:09 πŸ‘ 5 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Bar chart and page-by-page visualization of 'A Christmas Carol' by Charles Dickens. The bar chart shows the percentage of words related to wealth, joy, and cold in each chapter. Joy-related words (e.g., "merry," "happy," "love") have the highest percentage in all chapters, with Chapter 5 standing out at 1.20%. Cold-related words (e.g., "cold," "frost," "dark") are most prominent in Chapter 1 (0.47%), while wealth-related words (e.g., "money," "poor," "generous") appear consistently but at lower percentages. The page-by-page layout displays the novel's text with color-coded words, highlighting the thematic analysis.

Bar chart and page-by-page visualization of 'A Christmas Carol' by Charles Dickens. The bar chart shows the percentage of words related to wealth, joy, and cold in each chapter. Joy-related words (e.g., "merry," "happy," "love") have the highest percentage in all chapters, with Chapter 5 standing out at 1.20%. Cold-related words (e.g., "cold," "frost," "dark") are most prominent in Chapter 1 (0.47%), while wealth-related words (e.g., "money," "poor," "generous") appear consistently but at lower percentages. The page-by-page layout displays the novel's text with color-coded words, highlighting the thematic analysis.

For this week's #TidyTuesday, I visualized the themes of Charles Dickens's 'A Christmas Carol.' Used ggpage for a page-by-page layout of the novel with color-coded words.

Code: github.com/gkaramanis/t...

#RStats #dataviz

04.01.2026 15:13 πŸ‘ 15 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
A grid of 10 by 10 square tiles, each filled with either black or white, arranged in a spiral-like pattern. Some tiles are overlaid with smaller squares of the opposite color

A grid of 10 by 10 square tiles, each filled with either black or white, arranged in a spiral-like pattern. Some tiles are overlaid with smaller squares of the opposite color

Genuary 2026, Day 4: Lowres

Low-res version of day 1: bsky.app/profile/kara...

#RStats code: github.com/gkaramanis/a...

#rtistry #genuary #genuary4 #creativecoding

04.01.2026 08:58 πŸ‘ 6 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
A generative art plot showing a grid of colored tiles arranged in a spiral pattern. The colors of the tiles are determined by the Fibonacci sequence, with five repeating hues assigned based on each tile’s position relative to Fibonacci-based breaks in the spiral. Some smaller tiles are randomly sampled and overlaid in contrasting colors.

A generative art plot showing a grid of colored tiles arranged in a spiral pattern. The colors of the tiles are determined by the Fibonacci sequence, with five repeating hues assigned based on each tile’s position relative to Fibonacci-based breaks in the spiral. Some smaller tiles are randomly sampled and overlaid in contrasting colors.

Genuary 2026, Day 3: Fibonacci forever

#RStats code: github.com/gkaramanis/a...

#rtistry #genuary #genuary3 #creativecoding

04.01.2026 08:52 πŸ‘ 24 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0
Video thumbnail

Genuary 2026, Day 2: Twelve principles of animation

#RStats code: github.com/gkaramanis/a...

#rtistry #genuary #genuary2 #creativecoding

02.01.2026 14:40 πŸ‘ 12 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
A generative art piece featuring an 80 by 80 grid of small squares, arranged in a spiral pattern radiating from the center. The squares alternate between black and white. Some squares are randomly highlighted with smaller, contrasting tiles.

A generative art piece featuring an 80 by 80 grid of small squares, arranged in a spiral pattern radiating from the center. The squares alternate between black and white. Some squares are randomly highlighted with smaller, contrasting tiles.

Genuary 2026, Day 1: One color, one shape

Code: github.com/gkaramanis/a...

Inspiration: bsky.app/profile/roni...

#RStats #genuary #genuary1 #creativecoding

02.01.2026 05:47 πŸ‘ 24 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

The data I used are the CSV files at: github.com/rfordatascie...

But the easiest way should be to check Glottolog's site: glottolog.org/glottolog/la...

29.12.2025 14:05 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Map and bar chart showing the global distribution of 4 209 endangered languages. The world map displays threatened, shifting, moribund, and nearly extinct languages as colored points, with yellow areas highlighting regions of high language clustering. A notable concentration of approximately 700 endangered languages appears in Papua New Guinea and the Indonesian portion of New Guinea, shown in detail in an inset map (bottom right). The bar chart (bottom left) breaks down the 4 209 languages by endangerment status: 1 629 threatened, 1 835 shifting, 434 moribund, and 311 nearly extinct.

Map and bar chart showing the global distribution of 4 209 endangered languages. The world map displays threatened, shifting, moribund, and nearly extinct languages as colored points, with yellow areas highlighting regions of high language clustering. A notable concentration of approximately 700 endangered languages appears in Papua New Guinea and the Indonesian portion of New Guinea, shown in detail in an inset map (bottom right). The bar chart (bottom left) breaks down the 4 209 languages by endangerment status: 1 629 threatened, 1 835 shifting, 434 moribund, and 311 nearly extinct.

For last week's #TidyTuesday, I created a map of endangered languages around the world. Built entirely in R/ggplot2: transforming spatial coordinates, identifying hotspots and composing multiple charts!

Code: github.com/gkaramanis/t...

Inspiration: www.reddit.com/r/MapPorn/co...

#RStats #dataviz

29.12.2025 11:47 πŸ‘ 53 πŸ” 12 πŸ’¬ 3 πŸ“Œ 0
Video thumbnail

For this week's #TidyTuesday, an interactive Shiny app to explore roundabouts around the world. Select a city from the table to zoom to its roundabouts on the map, search by location, and discover which cities have the most roundabouts.

Code: github.com/gkaramanis/t...

#RStats #dataviz #Shiny

21.12.2025 15:16 πŸ‘ 9 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
TidyTuesday 2025/50 - Georgios Karamanis This week I had fun making a custom table with the reactable R package to show the car attributes in the new Qatar Cars dataset. Code on GitHub

Play with the interactive table at
karaman.is/blog/2025/12...

14.12.2025 16:53 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Video thumbnail

For this week’s #TidyTuesday, I had fun making a custom table with the reactable R package to show the car attributes in the new Qatar Cars dataset.

Code: github.com/gkaramanis/t...

#RStats #dataviz

14.12.2025 16:33 πŸ‘ 20 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0

Might be a historical mean, temperatures above 19 degrees were marked as record in the dataset

03.12.2025 18:23 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Thanks!

03.12.2025 12:38 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Line and point chart visualizing Zurich’s summer temperatures from 1923 to 2025. For each year, the highest, lowest, and mean summer temperatures are shown. A dotted line marks 19β€―Β°C. Recent years show an increase in both average and maximum summer temperatures, with highs above 30β€―Β°C every year at least since 2015.

Line and point chart visualizing Zurich’s summer temperatures from 1923 to 2025. For each year, the highest, lowest, and mean summer temperatures are shown. A dotted line marks 19β€―Β°C. Recent years show an increase in both average and maximum summer temperatures, with highs above 30β€―Β°C every year at least since 2015.

For this week’s #TidyTuesday, I visualized Zurich’s rising summer temperatures. In the past 11 years, avg temperatures rose above 19Β°C eight times, and highs surpassed 30Β°C every summer. The BΓΆΓΆgg can’t predict the weather, let alone the warming

Code: github.com/gkaramanis/t...

#RStats #dataviz

03.12.2025 12:25 πŸ‘ 19 πŸ” 1 πŸ’¬ 2 πŸ“Œ 0
Two-panel chart visualizing Statistical Performance Index (SPI) scores from 2016 to 2023. SPI is a World Bank measure of national statistical system capacity, combining data use, services, products, sources, and infrastructure. The left panel shows smoothed lines for each world region, highlighting Europe & Central Asia, which is near the top, just below North America. The right panel displays small multiples for each Europe & Central Asia country, with individual line plots showing that most countries maintain high SPI scores, while a few, such as Uzbekistan, Moldova, and Turkmenistan, consistently score lower.

Two-panel chart visualizing Statistical Performance Index (SPI) scores from 2016 to 2023. SPI is a World Bank measure of national statistical system capacity, combining data use, services, products, sources, and infrastructure. The left panel shows smoothed lines for each world region, highlighting Europe & Central Asia, which is near the top, just below North America. The right panel displays small multiples for each Europe & Central Asia country, with individual line plots showing that most countries maintain high SPI scores, while a few, such as Uzbekistan, Moldova, and Turkmenistan, consistently score lower.

For this week’s #TidyTuesday, a two-panel chart showing World Bank's SPI scores for Europe & Central Asia. Most countries in the region have high SPI scores, but a few lag behind.

Code:Β github.com/gkaramanis/t...

#RStats #dataviz

30.11.2025 19:30 πŸ‘ 15 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
A horizontal bar chart visualizes the number of exclamation marks per 1β€―000 words in each Sherlock Holmes book. Each bar’s width represents the total word count for the book, and the bars are stacked vertically with book titles labeled on the left. "The Adventure of the Dying Detective" has the highest rate at 7.72 exclamation marks per 1β€―000 words, followed by β€œThe Adventure of the Red Circle” (6.23) and "The Adventure of the Solitary Cyclist" (6.06). "The Musgrave Ritual" has the lowest rate at 0.92. The chart uses a minimal black-and-white color scheme. The title reads β€œSherlock!” and the subtitle explains the metric and bar width.

A horizontal bar chart visualizes the number of exclamation marks per 1β€―000 words in each Sherlock Holmes book. Each bar’s width represents the total word count for the book, and the bars are stacked vertically with book titles labeled on the left. "The Adventure of the Dying Detective" has the highest rate at 7.72 exclamation marks per 1β€―000 words, followed by β€œThe Adventure of the Red Circle” (6.23) and "The Adventure of the Solitary Cyclist" (6.06). "The Musgrave Ritual" has the lowest rate at 0.92. The chart uses a minimal black-and-white color scheme. The title reads β€œSherlock!” and the subtitle explains the metric and bar width.

For this week's #TidyTuesday, a horizontal bar chart showing the number of exclamation marks per 1β€―000 words in each Sherlock Holmes book. β€œThe Adventure of the Dying Detective” has the highest rate with 7.72

Code: github.com/gkaramanis/t...

#RStats #dataviz

23.11.2025 06:29 πŸ‘ 24 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
A faceted scatter plot showing tuberculosis (TB) case notification rate (new, relapse, and unknown previous treatment cases per 100,000 population per year) and TB mortality rate (deaths per 100,000 population per year) by WHO region for 2023. Each facet represents a WHO region, with countries displayed as points sized according to population. Labeled countries are those with the highest case notification rates, mortality rates, or population sizes. The Western Pacific and African regions have the highest case notification rates, accounting for nearly 70% of global reported TB cases. Mortality rates are notably high in several African countries, indicating ongoing challenges with TB diagnosis and treatment access worldwide. Overall, case notification rates show a slight increase from 2022, while global TB deaths have decreased by about 5%.

A faceted scatter plot showing tuberculosis (TB) case notification rate (new, relapse, and unknown previous treatment cases per 100,000 population per year) and TB mortality rate (deaths per 100,000 population per year) by WHO region for 2023. Each facet represents a WHO region, with countries displayed as points sized according to population. Labeled countries are those with the highest case notification rates, mortality rates, or population sizes. The Western Pacific and African regions have the highest case notification rates, accounting for nearly 70% of global reported TB cases. Mortality rates are notably high in several African countries, indicating ongoing challenges with TB diagnosis and treatment access worldwide. Overall, case notification rates show a slight increase from 2022, while global TB deaths have decreased by about 5%.

For this week's #TidyTuesday a faceted scatterplot showing TB case notification rate vs mortality rate by WHO region in 2023.

Code: github.com/gkaramanis/t...

#RStats #dataviz

16.11.2025 12:55 πŸ‘ 13 πŸ” 0 πŸ’¬ 0 πŸ“Œ 1