Жуки

В этой работе я анализирую биологические данные о жуках с помощью инструментов анализа данных и визуализации.

Я выбрала эту тему, потому что она сочетает в себе научный интерес и личную увлечённость: Жуки имеют привлекательный и милый вид, а самое главное — играют важную роль в экосистемах и обладают большим разнообразием форм и жизненных циклов.

Цель проекта — рассмотреть имеющиеся данные о жуках и представить их в виде наглядных графиков, чтобы лучше понять основные особенности и закономерности, отражённые в этих данных.

В графиках используется широкая палитра цветов, сопоставимая с природным разнообразием. Это позволяет чётко разграничить элементы и избежать слияния близких по оттенку категорий.

Диаграммы, которые присутствуют в данном проекте:

  1. Круговая диаграмма
  2. Точечная диаграмма
  3. Столбчатая диаграмма
  4. Линейная диаграмма
Исходный размер 1710x642

График 1

Семейств жесткокрылых в мире около 150, а общее число видов превышает 1 миллион.

В круговой диаграмме я сравнила численность видов некоторых семейств жуков. В данном графике присутствуют группы, имеющие самое большое количество видов, а так же семейства, которые просто мне приглянулись.

Исходный размер 1547x934

По данному графику можно выяснить, что самые большие семейства жуков в мире — это долгоносики и стафилиниды.

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

В столбчатых диаграммах тоже продемонстрированы соотношения численности видов в приведённых семействах жуков, но уже исключительно в России.

0

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-ти семейств над всеми остальными во всём мире.

Исходный размер 1547x934

Точное количество видов насекомых в мире невозможно установить, поскольку ежегодно описываются новые виды и фиксируются случаи вымирания существующих. Однако по графику видно, что тут уже число видов в остальных семействах намного больше, чем долгоносиков и стафилинид.

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‑х годов наблюдалось существенное снижение численности популяции майских жуков вследствие применения пестицидов. На линейной диаграмме видно, как менялось число личинок в почве (сколько их приходилось на один квадратный метр) в разных регионах. Данные собраны с интервалом в несколько лет.

Исходный размер 1547x934

После вступления в силу запрета на использование пестицидов, зафиксировано восстановление численности насекомых, что свидетельствует об эффективности принятых регуляторных мер.

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

На точечной диаграмме отслеживаются средние показатели веса и размера жука геркулеса на разных этапах его развития.

Исходный размер 1547x934
Мы используем файлы cookies для улучшения работы сайта НИУ ВШЭ и большего удобства его использования. Более подробную...
Показать больше