Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 30.12.2020
Сообщений: 109

График в Python

28.02.2021, 21:52. Показов 1300. Ответов 1

Студворк — интернет-сервис помощи студентам
Нужно по примеру кода сделать свой. Можете обьяснить как действует код

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
import collections
from pylab import figure, show
from math import log
def plot_data(data, logarithmic=False, oneplot=False):
#    print data
    fig = figure(1)
    num = len(data)
    colors = ['r','b','g']
    markers = ['s','o','x']
    lines = ['-','--',':']
    if oneplot==True:
        ax = fig.add_subplot(111)
        ax.grid(True)
        i = -1
        line_titles = []
        x_max = y_max = 0
        for label, value in data.iteritems():
            i += 1
            j = -1
            for sort_type, points in value.iteritems():
                j += 1
                od_points = collections.OrderedDict(sorted(points.items()))
                if logarithmic:
                    xs = [(x>0 and log(x,10) or 0) for x in od_points.keys()]
                    ys = [(y>0 and log(y,10) or 0) for y in od_points.values()]
                else:
                    xs = od_points.keys()
                    ys = od_points.values()
                xs.insert(0,0)
                x_max = max(x_max, max(xs))
                ys.insert(0,0)
                y_max = max(y_max, max(ys))
                ax.plot(xs, ys, colors[j%num]+markers[j%num]+lines[i%num], label=sort_type )
                line_titles.append(sort_type+' '+label)
        ax.set_xlim( (0, x_max*1.1) )
        ax.set_ylim( (0, y_max*1.1) )
        ax.legend(line_titles, loc=4)
    else:
        i = 0
        for label, value in data.iteritems():
            i += 1
            ax = fig.add_subplot(num,1,i)
            ax.grid(True)
            ax.set_title(label)
            j = -1
            x_max = y_max = 0
            for sort_type, points in value.iteritems():
                j += 1
                od_points = collections.OrderedDict(sorted(points.items()))
                if logarithmic:
                    xs = [log(x,10) for x in od_points.keys()]
                    ys = [log(y,10) for y in od_points.values()]
                else:
                    xs = od_points.keys()
                    ys = od_points.values()
                xs.insert(0,0)
                x_max = max(x_max, max(xs))
                ys.insert(0,0)
                y_max = max(y_max, max(ys))
                ax.plot(xs, ys, colors[j%num]+markers[j%num]+'-', label=sort_type )
            ax.set_xlim( (0, x_max*1.1) )
            ax.set_ylim( (0, y_max*1.1) )
            ax.legend(loc=4)
    show()
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.02.2021, 21:52
Ответы с готовыми решениями:

График на Python
Помогите построить) Буду благодарна) Построить график Даны действительные числа a и b (a<b) , натуральное число n , функция y = f⁡...

График на python xy
Построить график функции y=5/x. Построить две концентрические окружности с центром в точке (4,8). Нарисовать дом. Помогите,...

График функции на Python
Помогите, пожалуйста, построить) Буду благодарна) Построить график функции. Даны действительные числа a и b (a<b) , натуральное...

1
0 / 0 / 0
Регистрация: 30.12.2020
Сообщений: 109
28.02.2021, 21:53  [ТС]
Нужно по примеру кода сделать свой. Можете обьяснить как действует код

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
import collections
from pylab import figure, show
from math import log
def plot_data(data, logarithmic=False, oneplot=False):
#    print data
    fig = figure(1)
    num = len(data)
    colors = ['r','b','g']
    markers = ['s','o','x']
    lines = ['-','--',':']
    if oneplot==True:
        ax = fig.add_subplot(111)
        ax.grid(True)
        i = -1
        line_titles = []
        x_max = y_max = 0
        for label, value in data.iteritems():
            i += 1
            j = -1
            for sort_type, points in value.iteritems():
                j += 1
                od_points = collections.OrderedDict(sorted(points.items()))
                if logarithmic:
                    xs = [(x>0 and log(x,10) or 0) for x in od_points.keys()]
                    ys = [(y>0 and log(y,10) or 0) for y in od_points.values()]
                else:
                    xs = od_points.keys()
                    ys = od_points.values()
                xs.insert(0,0)
                x_max = max(x_max, max(xs))
                ys.insert(0,0)
                y_max = max(y_max, max(ys))
                ax.plot(xs, ys, colors[j%num]+markers[j%num]+lines[i%num], label=sort_type )
                line_titles.append(sort_type+' '+label)
        ax.set_xlim( (0, x_max*1.1) )
        ax.set_ylim( (0, y_max*1.1) )
        ax.legend(line_titles, loc=4)
    else:
        i = 0
        for label, value in data.iteritems():
            i += 1
            ax = fig.add_subplot(num,1,i)
            ax.grid(True)
            ax.set_title(label)
            j = -1
            x_max = y_max = 0
            for sort_type, points in value.iteritems():
                j += 1
                od_points = collections.OrderedDict(sorted(points.items()))
                if logarithmic:
                    xs = [log(x,10) for x in od_points.keys()]
                    ys = [log(y,10) for y in od_points.values()]
                else:
                    xs = od_points.keys()
                    ys = od_points.values()
                xs.insert(0,0)
                x_max = max(x_max, max(xs))
                ys.insert(0,0)
                y_max = max(y_max, max(ys))
                ax.plot(xs, ys, colors[j%num]+markers[j%num]+'-', label=sort_type )
            ax.set_xlim( (0, x_max*1.1) )
            ax.set_ylim( (0, y_max*1.1) )
            ax.legend(loc=4)
    show()
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.02.2021, 21:53
Помогаю со студенческими работами здесь

Изобразить 2d график функции в Python
изобразить 2d график функции согласно своему варианту и сохранить в .png файл. Y(x) = 1/x*sin(5*x), x =

Добавить анимацию в график Python
Добавить анимацию к этому графику с помощью matplotlib.animation и сохранить import numpy as np from matplotlib import pyplot as plt...

Создать график функции Python
Задание выглядит так: Составить программу создания рисунка графика функции y = cos(x^2)*sin(2x-1)+4,29 на некотором интервале (Интервал...

График интеграла с переменным верхним пределом в Python
Всем привет! Дана следующая функция: z(r) = z_f - r_f^2 sqrt{1 - r_0^2} {\int\limits_{r_f}^r {\frac{r sqrt{r^2 - r_0^2}}{\sqrt{(r_f^2...

Построить график ряда U(x,t)=cos(pi*n*x)*exp^(t) на Python
Добрый день, задача такова, что я хочу построить изображение ряда U(x,t)=cos(pi*n*x)*exp^(t) c условиями: 0<x>30,t=const,n>0 на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru