
Жуки
В этой работе я анализирую биологические данные о жуках с помощью инструментов анализа данных и визуализации.
Я выбрала эту тему, потому что она сочетает в себе научный интерес и личную увлечённость: Жуки имеют привлекательный и милый вид, а самое главное — играют важную роль в экосистемах и обладают большим разнообразием форм и жизненных циклов.
Цель проекта — рассмотреть имеющиеся данные о жуках и представить их в виде наглядных графиков, чтобы лучше понять основные особенности и закономерности, отражённые в этих данных.
В графиках используется широкая палитра цветов, сопоставимая с природным разнообразием. Это позволяет чётко разграничить элементы и избежать слияния близких по оттенку категорий.
Диаграммы, которые присутствуют в данном проекте: 1. Круговая диаграмма 2. Точечная диаграмма 3. Столбчатая диаграмма 4. Линейная диаграмма

График 1
Семейств жесткокрылых в мире около 150, а общее число видов превышает 1 миллион.
В круговой диаграмме я сравнила численность видов некоторых семейств жуков. В данном графике присутствуют группы, имеющие самое большое количество видов, а так же семейства, которые просто мне приглянулись.
По данному графику можно выяснить, что самые большие семейства жуков в мире — это долгоносики и стафилиниды.
import pandas as pd import matplotlib.pyplot as plt
df = pd.read_csv («ЖУКИЕ-1.csv»)
labels = df[«Семейство»] values = df[«Количество»]
plt.figure (figsize=(10, 10))
plt.pie ( values, labels=labels, startangle=90, labeldistance=1.15, wedgeprops={"edgecolor»: «white"} )
plt.tight_layout () plt.show ()
Графики 2
В столбчатых диаграммах тоже продемонстрированы соотношения численности видов в приведённых семействах жуков, но уже исключительно в России.
import pandas as pd import matplotlib.pyplot as plt
df = pd.read_csv («/mnt/data/ЖУКИЕ.csv»)
plt.figure (figsize=(14, 6)) plt.bar (df[«Отряд»], df[«Количество»], width=0.6)
plt.xticks (rotation=45, ha="right») plt.ylabel («Количество») plt.grid (axis="y», alpha=0.4)
plt.tight_layout () plt.show ()
По данному графику можно выяснить, что в России есть далеко не все виды жуков, но численность видов долгоносиков продолжает доминировать над всеми остальными группами, даже теми, кто не был отдельно выбран для анализа и помещён в один столбик.
import pandas as pd import matplotlib.pyplot as plt
df = pd.read_csv («/mnt/data/ЖУКИЕ.csv»)
df_filtered = df[df[«Количество»] > 100]
plt.figure (figsize=(14, 6)) plt.bar (df_filtered[«Отряд»], df_filtered[«Количество»], width=0.6)
plt.xticks (rotation=45, ha="right») plt.ylabel («Количество») plt.grid (axis="y», alpha=0.4)
plt.tight_layout () plt.show ()
Так же я решила сравнить численность видов 15-ти семейств над всеми остальными во всём мире.
Точное количество видов насекомых в мире невозможно установить, поскольку ежегодно описываются новые виды и фиксируются случаи вымирания существующих. Однако по графику видно, что тут уже число видов в остальных семействах намного больше, чем долгоносиков и стафилинид.
import pandas as pd import matplotlib.pyplot as plt
df = pd.read_csv («/mnt/data/ЖУКИЕ.csv»)
plt.figure (figsize=(14, 6)) plt.bar (df[«Отряд»], df[«Численность»], width=0.6)
plt.xticks (rotation=45, ha="right») plt.ylabel («Численность, экз.») plt.grid (axis="y», alpha=0.4)
plt.tight_layout () plt.show ()
График 3
В период 1980‑х годов наблюдалось существенное снижение численности популяции майских жуков вследствие применения пестицидов. На линейной диаграмме видно, как менялось число личинок в почве (сколько их приходилось на один квадратный метр) в разных регионах. Данные собраны с интервалом в несколько лет.
После вступления в силу запрета на использование пестицидов, зафиксировано восстановление численности насекомых, что свидетельствует об эффективности принятых регуляторных мер.
import pandas as pd import matplotlib.pyplot as plt
df = pd.read_csv («Популяция-майски_1.csv»)
years = df[«Год»] population = df[«Численность»]
plt.figure (figsize=(12, 6))
plt.plot ( years, population, marker="o», linewidth=2.5 )
plt.ylim (0, 420) plt.yticks ([0, 100, 200, 300, 400])
plt.grid (axis="y», alpha=0.6)
plt.tight_layout () plt.show ()
График 4
На точечной диаграмме отслеживаются средние показатели веса и размера жука геркулеса на разных этапах его развития.
Синие точки — длинна. Красные точки — масса.
import pandas as pd import matplotlib.pyplot as plt
df = pd.read_csv («/mnt/data/Жук Геркулес.csv»)
x = range (len (df))
plt.figure (figsize=(12, 6))
plt.scatter (x, df[«Длина»], s=80) plt.scatter (x, df[«Масса»], s=80)
plt.xticks (x, df[«Стадия»], rotation=45, ha="right») plt.ylabel («Значение») plt.xlabel («Стадия развития») plt.title («Точечная диаграмма: длина и масса по стадиям развития»)
plt.tight_layout () plt.show ()
Заключение
В ходе проекта были проанализированы данные, связанные с жуками, и представлены в виде различных графиков. Визуализация позволила наглядно показать распределение, изменения и различия в данных, а также упростила их восприятие.
Для генерации кода в этом проекте использовался ChatGPT. Он использовался для оптимизации и исправления ошибок.