Описание:

Имеется набор данных о температуре за неделю:

– Дни: `['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']`

– Температура: `[15, 17, 20, 22, 19, 18, 16]`

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

Решение:

```python

import plotly.graph_objects as go

# Данные

days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']

temperatures = [15, 17, 20, 22, 19, 18, 16]

# Построение графика

fig = go.Figure()

fig.add_trace(go.Scatter(

x=days,

y=temperatures,

mode='lines+markers',

name='Temperature',

line=dict(color='blue', width=2),

marker=dict(size=8)

))

# Настройка графика

fig.update_layout(

title='Изменение температуры за неделю',

xaxis_title='Дни недели',

yaxis_title='Температура (°C)',

template='plotly_white'

)

# Показ графика

fig.show()

```




Задача 2: Построение круговой диаграммы

Описание:

Имеется информация о продажах по категориям:

– Категории: `['Electronics', 'Clothing', 'Groceries', 'Books', 'Furniture']`

– Продажи: `[1200, 1500, 800, 600, 900]`

Постройте круговую диаграмму, отображающую доли продаж по категориям.

Решение:

```python

import plotly.graph_objects as go

# Данные

categories = ['Electronics', 'Clothing', 'Groceries', 'Books', 'Furniture']

sales = [1200, 1500, 800, 600, 900]

# Построение круговой диаграммы

fig = go.Figure(data=[go.Pie(

labels=categories,

values=sales,

hole=0.4 # Делает диаграмму "пончиковой"

)])

# Настройка графика

fig.update_layout(

title='Распределение продаж по категориям',

template='plotly_white'

)

# Показ графика

fig.show()

```



Задача 3: Построение столбчатого графика с несколькими категориями

Описание:

Имеется информация о продажах в двух магазинах по категориям товаров:

– Категории: `['Electronics', 'Clothing', 'Groceries', 'Books', 'Furniture']`

– Продажи в магазине A: `[1000, 1400, 800, 500, 700]`

– Продажи в магазине B: `[1200, 1500, 600, 700, 900]`

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

Решение:

```python

# Данные

categories = ['Electronics', 'Clothing', 'Groceries', 'Books', 'Furniture']

sales_a = [1000, 1400, 800, 500, 700]

sales_b = [1200, 1500, 600, 700, 900]

# Построение графика

fig = go.Figure()

fig.add_trace(go.Bar(

x=categories,

y=sales_a,

name='Store A',

marker=dict(color='blue')

))

fig.add_trace(go.Bar(

x=categories,

y=sales_b,

name='Store B',

marker=dict(color='orange')

))

# Настройка графика

fig.update_layout(

title='Сравнение продаж по категориям в двух магазинах',

xaxis_title='Категории',

yaxis_title='Продажи ($)',

barmode='group',

template='plotly_white'

)

# Показ графика

fig.show()

```



Задача 4: Построение тепловой карты продаж по регионам и месяцам

Описание:

Имеются данные о продажах в четырёх регионах за три месяца:

– Регионы: `['North', 'South', 'East', 'West']`

– Месяцы: `['January', 'February', 'March']`

– Продажи (матрица):

```

[[500, 600, 700],

[400, 500, 600],

[700, 800, 900],

[300, 400, 500]]

```

Постройте тепловую карту, отображающую продажи.

Решение:

```python

import plotly.graph_objects as go

# Данные

regions = ['North', 'South', 'East', 'West']

months = ['January', 'February', 'March']

sales_matrix = [

[500, 600, 700],

[400, 500, 600],

[700, 800, 900],

[300, 400, 500]

]

# Построение тепловой карты

fig = go.Figure(data=go.Heatmap(

z=sales_matrix,

x=months,

y=regions,

colorscale='Viridis' # Цветовая схема

))

# Настройка графика

fig.update_layout(

title='Тепловая карта продаж',

xaxis_title='Месяцы',

yaxis_title='Регионы'

)

# Показ графика

fig.show()

```



Задача 5: Построение 3D-графика поверхности функции

Описание: Построить 3D-график для функции ( z = cos(x^2 + y^2) cdot *sin(x – y) ) на диапазоне (x) и (y) от (-5) до (5) с использованием более высокой сетки и с улучшенной цветовой гаммой.