|
0 / 0 / 0
Регистрация: 12.11.2018
Сообщений: 54
|
|
Построение графика по координатам из .txt файла и его линейная аппроксимация (Qt)08.03.2020, 17:43. Показов 3392. Ответов 14
Метки нет (Все метки)
Приветствую! По заголовку, необходимо написать программу на С++(желательно в Qt), которая выгружает из .txt файла координаты (данные в виде стобцов, разделенных табуляцией), строит по координатам график и линейно его аппроксимирует. Сперва, после стандартной подготовки проекта, решил подключить сам файл и разделить координаты на массивы X(n) и Y(n), но не смог написать правильный для этого код. Господа эксперты, будут советы ? (кроме ЧСВшных "иди учи", "сиди читай", "ну ты идиот")
0
|
|
| 08.03.2020, 17:43 | |
|
Ответы с готовыми решениями:
14
Построение графика из txt файла Построение графика по данным из txt файла |
|
381 / 324 / 65
Регистрация: 14.10.2014
Сообщений: 1,377
|
|
| 08.03.2020, 18:42 | |
|
первое, что приходит в голову:
если структура файла известна (а здесь она известна - это два столбца - X и Y), то можно создать два массива - один для X, другой для Y и читать значения по-переменно то в один массив, то в другой - сразу из файла.
0
|
|
|
0 / 0 / 0
Регистрация: 12.11.2018
Сообщений: 54
|
|
| 08.03.2020, 19:01 [ТС] | |
|
Так проблема в том, как это реализовать, мне приходила такая мысль
0
|
|
|
4082 / 2680 / 432
Регистрация: 09.09.2017
Сообщений: 11,900
|
|
| 08.03.2020, 19:04 | |
|
Ну, для вывода графика можно использовать обычный feedgnuplot. А вот есть ли стандартное решение для аппроксимации - не знаю. Для себя писал когда-то вот такую реализацию: https://github.com/COKPOWEHEU/Approx Правда, для вашей задачи она несколько избыточна - аппроксимация идет полиномом произвольной степени, а не только первой. Зато можно не писать с нуля.
0
|
|
|
0 / 0 / 0
Регистрация: 12.11.2018
Сообщений: 54
|
|
| 08.03.2020, 19:15 [ТС] | |
|
Благодарю, я посмотрю)
0
|
|
|
381 / 324 / 65
Регистрация: 14.10.2014
Сообщений: 1,377
|
||||||
| 08.03.2020, 19:17 | ||||||
|
Fouly,
это для 10 точек если что
0
|
||||||
|
0 / 0 / 0
Регистрация: 12.11.2018
Сообщений: 54
|
|
| 08.03.2020, 19:35 [ТС] | |
|
Можете, пожалуйста, пояснить, в таком коде в массивы сохраняются значения каждого из столбцов по отдельности ?
0
|
|
|
736 / 700 / 110
Регистрация: 29.05.2015
Сообщений: 4,267
|
||
| 08.03.2020, 19:45 | ||
|
Задача разбивается на этапы:
- прочитать из файла текст (цифры) - по этим цифрам нарисовать отрезки - это будет график без обработки - с помощью аппроксимации получить координаты дополнительных точек (самое трудное) - построить полный график с учётом дополнительных точек Что именно из этого списка вызывает трудности? Делай по этапам, сперва прочитай файл и т.д. Добавлено через 5 минут
0
|
||
|
381 / 324 / 65
Регистрация: 14.10.2014
Сообщений: 1,377
|
||
| 08.03.2020, 19:46 | ||
|
То есть массивы m и n выступают в качестве своеобразного буфера, в который мы считываем данные из файла
1
|
||
|
736 / 700 / 110
Регистрация: 29.05.2015
Сообщений: 4,267
|
|
| 08.03.2020, 19:50 | |
|
У тебя в файле, по идее, должны быть координаты точек. У каждой точки две координаты (X и Y), читаешь их - можешь нарисовать точку. Читаешь следующие две координаты - рисуешь вторую точку и можешь соединить их отрезком. Что тут непонятного?
0
|
|
|
0 / 0 / 0
Регистрация: 12.11.2018
Сообщений: 54
|
||||||
| 08.03.2020, 21:37 [ТС] | ||||||
|
Без шуток, я ценю, что вы решили уделить время моему вопросу, но к чему столько сарказма ? Если бы я сам мог выполнить задачу, то не обращался бы к другим за советами. Непонятно мне как правильно составить код для построения точек из файла на график. В этом, по сути, главная проблема.
Добавлено через 9 минут Вот я создал в mainwindow.ui кнопку для построения графика. По идее, нажатие на эту(первую) кнопку должно приводить построению графика по точкам из файла, а нажатие на вторую - к аппроксимации линейной функцией. Вот в чем моя проблема - я не знаю как это правильно сделать.
0
|
||||||
|
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
|
|
| 08.03.2020, 21:58 | |
|
Fouly, на форуме есть раздел qt
0
|
|
|
4082 / 2680 / 432
Регистрация: 09.09.2017
Сообщений: 11,900
|
||||||
| 09.03.2020, 00:12 | ||||||
|
Откопал какой-то старый шаблон рисования графика на OpenGL + SDL2:
0
|
||||||
|
381 / 324 / 65
Регистрация: 14.10.2014
Сообщений: 1,377
|
||||||
| 09.03.2020, 10:23 | ||||||
|
у меня в коллекции тоже есть пример построения графика в консоли при помощи WinApi функций (довольно давно стянул его себе с этого форума, кто автор, уже не помню):
![]() Fouly, А вообще, если можно пользоваться WinAPI, то в книге Литвиненко "Технология программирования на С++ win32 API приложения" есть как раз пример построения графика по данным из текстового файла.
0
|
||||||
|
0 / 0 / 0
Регистрация: 12.11.2018
Сообщений: 54
|
|
| 09.03.2020, 12:48 [ТС] | |
|
Благодарю! Правда, я уже разобрался с построением графика по точкам, теперь думаю, как его линейно аппроксимировать)
0
|
|
| 09.03.2020, 12:48 | |
|
Помогаю со студенческими работами здесь
15
Построение графика с txt файла (дата, время, параметр) Аппроксимация (регрессия) двух вариантов - линейная и линейная общего вида Построение графика по координатам
Чтение бинарного файла и построение графика на основе его данных Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|