голосование
PHP
jQuery
Firebird
BASH
HTML
Ресурсы
GIT
SEO
Oracle
Python
Проголосуйте за категорию!
счётчик
Яндекс.Метрика

Как построить график модуль matplotlib Python

Линейный график

Решил построить несложный график. Думал, что будет сложно. Оказалось, что это не сложно составить график. Возможно у меня простое решение. Есть статья: Простой график. Делал все по ней. Описания в ней мало, мне пришлось самому описывать действия функций. Для понимания я переделал описания действий.

Для генерации графика используется модуль matplotlib. На вашем компьютере может не быть этой библиотеки. Используйте pip: pip install matplotlib. О том как пользоваться pip смотрите статью: Как загружать библиотеки с pip Python. Предлагаю вам поэкспериментировать с координатами для линий y1...y4. Если вы сгенерируете налету график при помощи функции plt.show(), то появится окно с различными кнопками. В окне есть небольшой блок меню. Вы сможете увеличить векторный график. Можете сжать его по вертикали и горизонтали. Также сможете сохранить его в разных форматах. Показать и сохранить график можно, но выполнение этих действий в одном скрипте приведёт к ошибке. Выберите одно из действий. Для простоты понимания я разукрасил линии в разные цвета и добавил одну черную линию.


# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import numpy as np

# от -5 до 2 сделать 100 точек.Чем больше точек, тем точнее график.
x = np.linspace(-5, 2, 100)
# y1...y4 - линии одного графика, для каждой линии свой набор точек.
y1 = x**3 + 5*x**2 + 10
y2 = 3*x**2 + 10*x
y3 = 6*x + 10
y4 = 5*x**2 + 10

# будет 1 график, на нем 4 линии:
fig, ax = plt.subplots()
# функция y1(x), синий, надпись y(x)
ax.plot(x, y1, color="blue", label="голубая линия")
# функция y2(x), красный, надпись y'(x)
ax.plot(x, y2, color="red", label="красная линия")
# функция y3(x), зеленый, надпись y''(x)
ax.plot(x, y3, color="green", label="зелёная линия")
# функция y3(x), зеленый, надпись y''(x)
ax.plot(x, y4, color="black", label="черная линия")
# подпись у горизонтальной оси х
ax.set_xlabel("x")
# подпись у вертикальной оси y
ax.set_ylabel("y")
# показывать условные обозначения
ax.legend()

'''
Тут нужно сделать выбор в пользу одного действия. Либо вы показываете на окне 
векторный график, либо записываете график в картинку png
'''
#показать рисунок
plt.show()
# сохранить в файл 1.png
#fig.savefig('1.png')

линейный график

линейный график Python

Пирог график

Этот график напоминает по виду пирог. Пирог будет поделён на разные части. В списке sizes у меня 4 значения. Из-за этого пирог поделён на 4 части. Круговая диаграмма. В статье мало описания, поэтому пришлось самому описывать действия.


# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt

'''
График пирог, блоки будут расположены против часовой стрелки:
labels - названия кусков пирога
'''
labels = 'jQuery', 'PHP', 'Firebird', 'BASH'
sizes = [36,36,11,2]
''
explode - это отступ (разрыв) от основных частей пирога.
если поставите одни нули, то все блоки будут прижаты друг к другу.
''
explode = (0.1, 0.1, 0, 0)

fig1, ax1 = plt.subplots()
'''
sizes - размеры кусков в процентах
explode - отступы
labels - названия кусков
autopct - ?
shadow - тень
startangle - начальный угол, изменяя его, вы поворачиваете все куски.
'''
ax1.pie(sizes, explode=explode, labels=labels, autopct='ų.1f%%',
        shadow=True, startangle=90)
#Равное соотношение сторон гарантирует, что пирог нарисован как круг.
ax1.axis('equal')

# показать график
plt.show()

линейный график

пирог график Python
просмотры: 47, уровень: лёгкий уровень, рейтинг: 0, дата: 2017-10-03 22:40:30
проголосовать:

Комментарии:






поиск
реклама
банеры
домен RU всего за 99 рублей
http://www.2domains.ru домен RU домен RU всего за 99 рублей
http://ping-admin.ru/index_5659.html мониторинг сайтов сервис мониторинга работы сайта, мониторим HTTP, HTTPS, FTP, MYSQL, PostgreSQL, POP3, SMTP, IMAP
https://my.colobridge.net/aff.php?aff=047 серверы vps/vds облачный vps/vds сервер colobridge от 9,9 евро в месяц