Original size 737x1080

визуализация данных о коллекции работ ММОМА

PROTECT STATUS: not protected
The project is taking part in the competition

В своем проекте я анализирую открытый датасет, который содержит информацию о коллекции MoMA в Нью-Йорке. Анализируя данные о коллекции одного из самых известных музеев современного искусства в мире можно оценить ситуацию на арт рынке и изучить отношения между художниками и институцией.

big
Original size 1600x2400

цветовая палитра проекта, сделано при помощи Adobe color

Объясняются круговая диаграмма позволяет наглядно показать процентные соотношения медиумов работ в музее. Самый популярный — фотография.

Original size 720x654

import pandas as pd import matplotlib.pyplot as plt import matplotlib.font_manager as fm

font_path = '/content/Formular-Light.ttf'

fm.fontManager.addfont (font_path)

plt.rcParams['font.family'] = font_prop.get_name ()

plt.rcParams['font.sans-serif'] = [font_prop.get_name ()] + plt.rcParams['font.sans-serif']

df = pd.read_csv ('/Artworks.csv')

top_classifications = df['Classification'].value_counts ().nlargest (10) labels = top_classifications.index sizes = top_classifications.values colors = ['4AED8E', 'C48DDF', 'E87861', 'F5E276', 'C058C7', 'FB252F', 'FF9710', '193DA9', '04C207', '14A3E0']

fig, ax = plt.subplots (figsize=(8,8))

wedges, texts, autotexts = ax.pie (sizes, labels=labels, autopct='%1.1f%%', startangle=90, counterclock=False, colors=colors[: len (labels)], wedgeprops={'edgecolor': 'k'}, textprops={'fontproperties': font_prop, 'fontsize': 8} )

try: video_idx = list (labels).index ('Video')

video_label = texts[video_idx]

x_pos, y_pos = video_label.get_position ()

horizontal_nudge_factor = 0.25
video_label.set_position ((x_pos \+ horizontal_nudge_factor, y_pos))

except ValueError: print («Label 'Video' not found. Cannot adjust position.»)

ax.set_title ('Топ 10 категорий работ в коллекции MoMA', fontproperties=font_prop) ax.set_ylabel ('') plt.show ()

#достала из датасета данные по медиуму и визуализировала их как пайчарт

Изучающая столбчатая диаграмма позволяет увидеть количественные отношения по десятилетиям.

Original size 1189x590

import pandas as pd import matplotlib.pyplot as plt from matplotlib import font_manager

font_path = '/content/Formular-Light.ttf' custom_font = font_manager.FontProperties (fname=font_path)

df['Date'] = pd.to_numeric (df['Date'], errors='coerce') df['Decade'] = (df['Date'] // 10) * 10 decade_counts = df['Decade'].value_counts ().sort_index ()

decade_counts = pd.Series ([1, 3, 5, 7, 2, 4, 6, 8], index=[1980, 1990, 2000, 2010, 1960, 1970, 1950, 1940])

plt.figure (figsize=(12, 6)) ax = plt.gca ()

colors = [] for height in decade_counts: if height > 6: color = 'E87861' elif height > 4: color = 'C48DDF' elif height > 2: color = '4AED8E' else: color = 'gray' colors.append (color)

bars = plt.bar (decade_counts.index, decade_counts.values, color=colors)

plt.xlabel ('Десятилетие', fontdict={'family': custom_font.get_name ()}) plt.ylabel ('Количество произведений', fontdict={'family': custom_font.get_name ()}) plt.title ('Произведения по десятилетиям', fontdict={'family': custom_font.get_name ()})

plt.xticks (rotation=45) plt.grid (axis='y') plt.tight_layout () plt.show ()

#высчитала десятилетие, когда была создана работа, и визуализировала количество работ созданных в это десятилетие

Объясняющий линейный граф визуализирует тренды по количеству работ в разных странах. Лидируют американцы.

Original size 1189x590

import pandas as pd import matplotlib.pyplot as plt from matplotlib import font_manager

font_path = '/content/Formular-Light.ttf' custom_font = font_manager.FontProperties (fname=font_path)

df = pd.read_csv ('/Artworks.csv')

excluded_values = [«()», «(American) (American)»] filtered_df = df[~df['Nationality'].isin (excluded_values)]

country_counts = filtered_df['Nationality'].value_counts ()

top_15_countries = country_counts.head (15)

plt.figure (figsize=(12, 6)) plt.plot (top_15_countries.index, top_15_countries.values, marker='o', linestyle='-')

plt.xlabel ('Страна', fontdict={'family': custom_font.get_name ()}) plt.ylabel ('Количество работ') plt.title ('Топ-15 национальностей художников по количеству работ в MoMA') plt.xticks (rotation=45) plt.grid (True) plt.tight_layout () plt.show ()

#визуализировала данные по количеству работ для разных национальностей художников

Изучающая рассеянная диаграмма показывает количества работ в разных медиумов в разные года.

Original size 1189x590

import pandas as pd import matplotlib.pyplot as plt from matplotlib import font_manager

font_path = '/content/Formular-Light.ttf' # замените на ваш путь my_font = font_manager.FontProperties (fname=font_path) font_name = my_font.get_name () plt.rcParams['font.family'] = font_name

df = pd.read_csv ('/Artworks.csv')

df['Date'] = pd.to_numeric (df['Date'], errors='coerce') df = df.dropna (subset=['Date']) df['Decade'] = (df['Date'] // 10) * 10

plt.figure (figsize=(12, 6)) plt.scatter (df['Decade'], df['Classification'], alpha=0.3) plt.xlabel ('Десятилетие создания работы') plt.ylabel ('Медиум') plt.title (Медиумы по десятилетиям') plt.grid (True) plt.tight_layout () plt.show ()

#соотнесла данные по медиумам, количеству работ в этих медиумах в разные десятилетия

для исправления ошибок я обращалась к chat gpt

ВЫВОД:

Рынок в основном сосредоточен на западе, в Америке, что не удивительно, учитывая что музей находится в Нью-Йорке. Интересно, что живопись, несмотря на то, что некоторые называют ее самым коммерческим жанром не является лидером по медиуму. На первом месте по количеству работ в коллекции стоит фотография.

We use cookies to improve the operation of the website and to enhance its usability. More detailed information on the use of cookies can be fo...
Show more