Найти в Дзене
ЦифроПроф

Изображение векторов

Вектор изображается точкой или стрелкой, которая соединяет начало координат и точку с координатами (x,y). Стрелкой вектор отображается, когда нужно показать движение. Например, вектор [2, 3] означает сдвиг на две клетки вправо по оси x и на три клетки вверх по оси y. Рассмотрим на примерах. Задача 1 Изобразите стрелкой вектор [75, 15] из кейса об интернет-магазине одежды «НосиВипчик». import numpy as np
import matplotlib.pyplot as plt
vector = np.array([75, 15])
plt.figure(figsize=(7, 7))
plt.axis([0, 100, 0, 100])
plt.arrow(0, 0, vector[0], vector[1], head_width=4, length_includes_head="True")
plt.xlabel('Цена')
plt.ylabel('Качество')
plt.grid(True)
plt.show() Задача 2 Представьте все двумерные векторы с оценками клиентов интернет-магазина «НосиВипчик» в виде точек на плоскости. Какие клиенты с какого агрегатора пришли? import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
reviews_values = [
[68,18], [81,19], [81,22], [15,75], [75,15], [17,72],
[24,75], [2
Фото из открытых источников
Фото из открытых источников

Вектор изображается точкой или стрелкой, которая соединяет начало координат и точку с координатами (x,y). Стрелкой вектор отображается, когда нужно показать движение. Например, вектор [2, 3] означает сдвиг на две клетки вправо по оси x и на три клетки вверх по оси y. Рассмотрим на примерах.

Задача 1

Изобразите стрелкой вектор [75, 15] из кейса об интернет-магазине одежды «НосиВипчик».

import numpy as np
import matplotlib.pyplot as plt

vector = np.array([75, 15])
plt.figure(figsize=(7, 7))
plt.axis([0, 100, 0, 100])
plt.arrow(0, 0, vector[0], vector[1], head_width=4, length_includes_head="True")
plt.xlabel('Цена')
plt.ylabel('Качество')
plt.grid(True)
plt.show()

Задача 2

Представьте все двумерные векторы с оценками клиентов интернет-магазина «НосиВипчик» в виде точек на плоскости.

Какие клиенты с какого агрегатора пришли?

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

reviews_values = [
[68,18], [81,19], [81,22], [15,75], [75,15], [17,72],
[24,75], [21,91], [76, 6], [12,74], [18,83], [20,62],
[21,82], [21,79], [84,15], [73,16], [88,25], [78,23],
[32, 81], [77, 35]]
reviews = pd.DataFrame(reviews_values, columns=['Цена', 'Качество'])

plt.figure(figsize=(7, 7))
plt.axis([0, 100, 0, 100])
price = reviews['Цена'].values
quality = reviews['Качество'].values
plt.plot(price,quality,'ro')

plt.xlabel('Цена')
plt.ylabel('Качество')
plt.grid(True)
plt.show()

Задача 3

Создайте два отдельных списка двумерных векторов с оценками клиентов, которые пришли с первого сайта-агрегатора (масс-маркет) и со второго (люкс). Назовите переменные clients_1 и clients_2, а потом напечатайте их значения на экране.

import numpy as np
import pandas as pd

reviews_values = [
[68,18], [81,19], [81,22], [15,75], [75,15], [17,72],
[24,75], [21,91], [76, 6], [12,74], [18,83], [20,62],
[21,82], [21,79], [84,15], [73,16], [88,25], [78,23],
[32, 81], [77, 35]]
reviews = pd.DataFrame(reviews_values, columns=['Цена', 'Качество'])


clients_1 = []
clients_2 = []

for arr in reviews.values:
if (arr[0] < 40 and arr[1] > 60):
clients_2.append(arr)
elif (arr[0] > 60 and arr[1] < 40):
clients_1.append(arr)