Matplotlib— это библиотека визуализации данных на Python

Подбиблиотека Matplotlib представляет собой набор функций, которые позволяют создавать различные диаграммы.Линейные диаграммы используется для представления взаимосвязей между двумя наборами данных X и Y на разных осях.В этой статье мы узнаем о линейных диаграммах и простых линейных графиках Matplotlib.

Линейный график Python в Matplotlib

Здесь мы рассмотрим несколько примеров построения линейной диаграммы на Python с помощью Matplotlib:

Простой линейный график в Matplotlib

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

# importing the required libraries
import matplotlib.pyplot as plt
import numpy as np

# define data values
x = np.array([1, 2, 3, 4])  # X-axis points
y = x*2  # Y-axis points

plt.plot(x, y)  # Plot the chart
plt.show()  # display

Вывод:

Простой линейный график между данными X и Y

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

import matplotlib.pyplot as plt
import numpy as np


# Define X and Y variable data
x = np.array([1, 2, 3, 4])
y = x*2

plt.plot(x, y)
plt.xlabel("X-axis")  # add X-axis label
plt.ylabel("Y-axis")  # add Y-axis label
plt.title("Any suitable title")  # add title
plt.show()

Вывод:     

Простой линейный график с метками и заголовком

Линейный график с примечаниями

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

import matplotlib.pyplot as plt

# Sample data
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]

# Create a line chart
plt.figure(figsize=(8, 6))
plt.plot(x, y, marker='o', linestyle='-')

# Add annotations
for i, (xi, yi) in enumerate(zip(x, y)):
    plt.annotate(f'({xi}, {yi})', (xi, yi), textcoords="offset points", xytext=(0, 10), ha='center')

# Add title and labels
plt.title('Line Chart with Annotations')
plt.xlabel('X-axis Label')
plt.ylabel('Y-axis Label')

# Display grid
plt.grid(True)

# Show the plot
plt.show()

Вывод:

Скриншот-2024-01-03-130417

Несколько линейных графиков с использованием Matplotlib

Мы можем отобразить несколько диаграмм в одном контейнере с помощью функции pyplot.figure(). Это поможет нам сравнивать различные диаграммы, а также управлять их внешним видом.

import matplotlib.pyplot as plt
import numpy as np


x = np.array([1, 2, 3, 4])
y = x*2

plt.plot(x, y)
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.title("Any suitable title")
plt.show()  # show first chart

# The figure() function helps in creating a
# new figure that can hold a new chart in it.
plt.figure()
x1 = [2, 4, 6, 8]
y1 = [3, 5, 7, 9]
plt.plot(x1, y1, '-.')

# Show another chart with '-' dotted line
plt.show()

Вывод:

Несколько графиков на одной оси

Здесь мы рассмотрим, как добавить два графика на одну ось.

import matplotlib.pyplot as plt
import numpy as np

x = np.array([1, 2, 3, 4])
y = x*2

# first plot with X and Y data
plt.plot(x, y)

x1 = [2, 4, 6, 8]
y1 = [3, 5, 7, 9]

# second plot with x1 and y1 data
plt.plot(x1, y1, '-.')

plt.xlabel("X-axis data")
plt.ylabel("Y-axis data")
plt.title('multiple plots')
plt.show()

Вывод:

Заполните область между двумя линиями

С помощью функции pyplot.fill_between() мы можем заполнить область между двумя линейными графиками на одном и том же графике. Это поможет нам понять разницу между двумя линейными графиками на основе определённых условий.

import matplotlib.pyplot as plt
import numpy as np

x = np.array([1, 2, 3, 4])
y = x*2

plt.plot(x, y)

x1 = [2, 4, 6, 8]
y1 = [3, 5, 7, 9]

plt.plot(x, y1, '-.')
plt.xlabel("X-axis data")
plt.ylabel("Y-axis data")
plt.title('multiple plots')

plt.fill_between(x, y, y1, color='green', alpha=0.5)
plt.show()

Вывод:

Заполните область между данными Y и Y1, соответствующую данным по оси X