LINUX.ORG.RU

Самый простой способ рисовать график в питоне

 


0

1

Нужно нарисовать график из файла. Еще нужно кнопки выбора файла и маштабирования по осям х и у. Файл текстовый. Первая колонка х, вторая у.



Последнее исправление: cetjs2 (всего исправлений: 1)

так и будут тут твою домашку решать? Иди уже гугли

anonymous
()

заюзать биндинг tkinter или qt - не?

PexuOne
()
Ответ на: комментарий от Lizhen

Выбрать библиотеку для создания интерфейса пользователя. В ней создать экранную форму с кнопками и панелью для вывода графика, созданного в matplotlib.

Бибилотеки: в дистрибутив Python входит tkinter, есть ещё несколько альтернативных, например, PyQt5, wxPython и др.

Делаете в google поиск по словам вроде

matplotlib tkinter python

чтобы найти описание, как вставлять график в экранную форму.

Partisan ★★★★
()
Ответ на: комментарий от Partisan

А одной matplotlib обойтись нельзя? Она норм подходит, кнопки в ней есть, но как открыть меню выбора файла?

Lizhen
() автор топика
Ответ на: комментарий от sparks
import tkinter as tk
from tkinter import filedialog
import PyGnuplot as gp

root = tk.Tk()
root.withdraw()

file_path = filedialog.askopenfilename()

gp.c('plot file_path ......')

Так норм будет?

Lizhen
() автор топика
Ответ на: комментарий от Lizhen
import PyGnuplot as gp

Это троллинг такой, чтоле? Нафига здесь python, только чтоб импортировать модуль гнуплота и нарисовать картинку с его помощью? Почему не напрямую? Нафига здесь python?

anonymous
()
Ответ на: комментарий от Partisan

вся программа на Python-е

Я кроме Gnuplot-а никакой «всей программы» не вижу. Хорош народ дурить!

anonymous
()
Ответ на: комментарий от sparks

Еще слайдеры и кнопки будут. Потом.

Lizhen
() автор топика
Ответ на: комментарий от anonymous

Задачу надо сделать на питоне. Цель не рисовать графики а изучение языка. Я выбрала gnuplot как самый простой и очевидный вариант.

Lizhen
() автор топика
Ответ на: комментарий от Lizhen

Задачу надо сделать на питоне.

Так ты её не «делаешь» на питоне. Ты делаешь «финт ушами», не имеющий практической пользы.

anonymous
()
Ответ на: комментарий от anonymous

Тогда и либы нефиг юзать)))) только фрэймбуфер, только хардкор. Хотя для изучения языка весьма полезный хэловорлд *мухаха*

anonymous
()
Ответ на: комментарий от grem

В чем принципиальная разница между использованием pygnuplot и matplotlib? Первая намного проще в применении.

Lizhen
() автор топика
Ответ на: комментарий от anonymous

Там почти в самом верху, есть ссыль на плоти, вроде и питонячая хрень, вроде и по заданию, в реале одна строчка питона, а внутрях js+недосервер+недобраузер. Формально на питоне (:

А теперь давай, годится? Человек тут питон изучает, а не киссюникс

anonymous
()
Ответ на: комментарий от anonymous

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

anonymous
()
Ответ на: комментарий от anonymous

ну и чем это будет хуже matplotlib ? (: те же яйца только в профиль.

Глянь темы ТС, там нет желания учить и писать, собственно тут первый коммент мой.

А так за вечерок можно было бы выкатить несколько вариантов решения, проверяющему бы зашло. Но ТС даже в гугл никак, хотя это первые строки по запросу

anonymous
()
Ответ на: комментарий от Lizhen

Разница хотя бы в том, что для matplotlib тебе нужно будет средствами самого python прочитать данные их файла в массив - то есть уже освоить чтение из файла в определённого вида структуру. И уже потом передать их matplotlib.

Ну а чё, берёшь сразу veusz - он на python и файлы умеет в окошке читать и отрисовывать.

grem ★★★★★
()
Последнее исправление: grem (всего исправлений: 2)
Ответ на: комментарий от Lizhen

в том, что matplotlib разработана для Python-a и сочетается с библиотеками NumPy и SciPy, а также с библиотеками создания интерфейса пользователя для программ на Python.

PyGnuplot - оболочка лля вызова из Python библиотеки gnuplot. Не так хорошо сочетается с остальной частью программы на Python.

Partisan ★★★★
()
Ответ на: комментарий от anonymous

О да, рокетсайнс (: ну уж простите, раз студентота настолько отупела, то я пожалуй пойду в монастырь к буддистам опустошать голову во имя просветления. ибо в этом мире она похоже больше не нужна.

anonymous
()

О чем спорить? Задача решена и самым простым способом. sparks - красавчик :), спасибо.

Lizhen
() автор топика
Ответ на: комментарий от Partisan

сочетается с библиотеками NumPy и SciPy

Зачем все это? Может еще с++ выучить, чтобы рисовать графики на QT из питона?

Lizhen
() автор топика
Ответ на: комментарий от Lizhen

я ответил на воппос. Чтобы писать всю программу на Python-e, включая вычисления (NumPy, SciPy, Pandas), построение графика по результатам вычислений (matplotlib) и показа его в окне программы на Python.

Для обращения из Python к функциям Qt, предназначенным для создания интерфейса пользователя, есть библиотеки PyQt4, PyQt5, Pyside. Остальные функции Qt в Python не нужны, потому что в Python и так есть большой выбор пакетов.

Так что для описанных вами задач не понадобится C++.

Partisan ★★★★
()
Ответ на: комментарий от Partisan

Конечно все надо делать правильно. Но сколько времени займет все это изучить? У меня и других предметов полно. Вообще ничего не успеваю, сам наверное учился на 1 курсе, должен понимать.

Lizhen
() автор топика
Ответ на: комментарий от tz4678

А pandas чем ему поможет? Его в связке с matplotlib юзают, а интерфейсы он не рисует. Или ты предлагаешь его точки в DataFrame читать?

peregrine ★★★★★
()
Ответ на: комментарий от Lizhen

В чем принципиальная разница между использованием pygnuplot и matplotlib? Первая намного проще в применении.

В питоне как обычно всё через одно место. Поэтому проще отдать задачу внешнему процессу gnuplot.

ados ★★★★★
()
Ответ на: комментарий от Lizhen

Не проще. А вообще если в питоне возникают проблемы, не связанные с программированием, не связанные с обжорством питона и его скоростью, не связанные с тонкостями и нетривиальностью некоторых не очевидных моментов, то как вы программировать собираетесь?

peregrine ★★★★★
()
Ответ на: комментарий от Lizhen

На квиктайме графики не рисуются. Тулкит называется Qt.

peregrine ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.