1 / 1 / 0
Регистрация: 25.04.2017
Сообщений: 156
|
|
Построение графика в Chart13.03.2019, 18:11. Показов 8803. Ответов 18
Доброго времени суток! Работаю над программой, сделал встроенный редактор данных, можно ими пользоваться, есть проблема, нужно построить график (скрины ниже для того чтобы стало немного понятнее):
График показывает годовую выработку солнечной панели (100 вт для примера) Данные: январь 0,19; фев. 0,29; март 0,37; апрель 0,49; май 0,57; июнь 0,58; июль 0,61; август 0,58, сентябрь 0,51, октябрь 0,38, ноябрь 0,21 декабрь 0,15 1) График меняется от города, это для одного города, а для другого например второго города, янв. 0,23; фев. 0,3; март 0,37; апр 0,4; май 0,53, июнь 0,52, июль 0,57, август 0,55, сент, 0,49 октябрь, 0,37, ноябрь 0,24, декабрь 0,17. Вот мне нужно понять как в Chart график рисовать Потом в дальнейшем у меня есть база данных вот эти все значения это кВт, я по методу пропорции сделал формулу, для расчета каждой панели, т.е. если 100 Ваттная панель дает в январе 0,19 (к примеру), а у меня панель 320 Ватт, то нужно x=мощность моей панели*выроботку в первом месяце и разделить это все на 0,1 (панель в стандарте) и получаем мощность нашей выбранной панели за месяц. Вот нужно мне этому научиться, как строить этот график. 2) Последнее это как строить прямую в этом графике (пользователь укажет данные за лето и за зиму мне их нужно указать как один график, например зимой много, летом меньше это нужно показать тоже в этом графике) Надеюсь кто то поймет, поможет, осталось чуть чуть сделать, я застрял, отчаяние уже.
0
|
13.03.2019, 18:11 | |
Ответы с готовыми решениями:
18
Построение графика с использованием элемента Chart
|
1 / 1 / 0
Регистрация: 25.04.2017
Сообщений: 156
|
|
13.03.2019, 18:36 [ТС] | |
Если вдруг непонятно
Вначале один график (как на скрине в зависимости от города) Потом после нажатия кнопки будет дальнейший расчет и там уже будет график с использованием пропорции, мне только понять как это реализовать в chart.
0
|
13.03.2019, 20:46 | ||||||
Polyana1997,
С пониманием вашего толкования задачи у меня сложности, но предлагаю реализацию своего понимания. Данные естественно случайные, а пересчет произвольный (от фонаря). Кликните здесь для просмотра всего текста
1
|
1 / 1 / 0
Регистрация: 25.04.2017
Сообщений: 156
|
|
13.03.2019, 22:55 [ТС] | |
ovva, Вы мне не раз помогали, Вы золотой человек.
Но мне кажется у меня бошка взорвется, как у Вас от моего толкования! Если проще, выше есть данные за год, это для одного города, есть второй город я указал ниже. Тут все понятно. Вот нужно сделать один график при смене городов(как на скрине моем) он будет меняться(график), а вот как его сделать я не понял. В этом и проблема. А дальше мы переходим на следующую страницу и там расчет, Там опять график, человек выбирает нужную ему солнечную панель, он указывает количество их (ну это просто я из таблицы беру мощность и умножаю на количество), получу допустим число и задам ему переменную Full. Для того чтобы график был точным, я сделал формулу по пропорции, чтобы не запутаться напишу что где, мы умножаем мощность нашей панели на количество выработанной мощности(например 0,50) в тот месяц (например январь, там 0,23) и делим на 0,1 (100 Ватт как пример панель была взята) и получаем X=(0,5*0,23)/0,1, это наша панель выроботала за первый месяц! За январь, и так с каждым месяцем только вместо 0,23 мы ставим значение за февраль 0,29. Потом получим график полный! Я так сам сделаю с каждым городом, мне только понять как это все занести в chart. А пока, что я изучу Ваш труд! Добавлено через 1 час 50 минут ovva, Изучил Ваши старания, но, что - то у меня мозгов мало, тяжело понять.
0
|
13.03.2019, 23:36 | |||||||
Кликните здесь для просмотра всего текста
1
|
1 / 1 / 0
Регистрация: 25.04.2017
Сообщений: 156
|
|
14.03.2019, 01:50 [ТС] | |
ovva, Я скопировал, поправил, получилось, но...
Вашу работу я изучил правда, бошка правда лопается, но ничего. Но как мне это переделать под вот это? У меня 12 городов, всего будет 3 разных графика всего будет, я время потратил, нашел, посчитал, всего три: Январь - 0,19; Февраль - 0,29; Март - 0,37; Апрель - 0,49; Май - 0,57; Июнь - 0,58; Июль - 0,61; Август 0,58; Сентябрь - 0,51; Октябрь - 0,38; Ноябрь - 0,21; Декабрь - 0,15. второй: Январь - 0,23; Февраль - 0,3; Март - 0,37; Апрель - 0,4; Май - 0,53; Июнь - 0,52; Июль - 0,57; Август - 0,55; Сентябрь - 0,49; Октябрь - 0,37; Ноябрь - 0,24; Декабрь - 0,17; третий: Январь - 0,21; Февраль - 0,3; Март - 0,35; Апрель - 0,45; Май - 0,52; Июнь - 0,5; Июль - 0,54; Август - 0,52; Сентябрь - 0,46; Октябрь - 0,35; Ноябрь - 0,21; Декабрь - 0,16. Это основной график, он меняется в зависимости от выбора города. Это все понятно, у меня получилось, но данные эти, как прикрепить не знаю. Дальше если нажать продолжить, там будет опять график и панели, выбор их, количество их Панель 100 ватт - дает свою мощность в зависимости от города разную мощность в зависимости от месяца. Поэтому используем пропорцию для поиска её. x=мощность выбранной панели*мощность в одном месяце/0,1 (нашу панель принятую в стандарте). Я понял, что Вы объяснили, это рандомом строит график, интересная штука, но я не пойму как мне применить мои данные там. Я попробовал пару способов, вот уже почти 2 часа ночи, но никак вот это всё. Я Вам в ЛС скинул видео 30 секундное, но видимо зря, я вспомнил, что Вы не отвечаете в ЛС, заранее извиняюсь. Добавлено через 1 минуту Я даже сделал таблицу Access одна кВт эти а другая месяцы, таких три таблицы. А вот как их в Chart прицепить это тоже стало непонятно, перерыл инет тоже не нашел. Уже от нервов сердце заболело. Вот как то так.
0
|
14.03.2019, 14:46 | ||||||
Polyana1997,
Давайте поделим задачу на части: I. Есть некоторые данные по месяцам (янв., …, дек.) для нескольких городов. Например, для трех городов Москва 0.19;0.29;0.37;0.49;0.57;0.58;0.61;0.58; 0.51;0.38;0.21;0.15 Иркутск 0.23;0.30;0.37;0.40;0.53;0.52;0.57;0.55; 0.49;0.37;0.24;0.17 Якутск 0.21;0.30;0.35;0.45;0.52;0.50;0.54;0.52; 0.46;0.35;0.21;0.16 Для этих данных не вижу большого смысла заводить базу данных, думаю будет достаточно и текстового файла. В этой части нужно: • прочитать текстовый файл с данными • заполнить список именами городов • после выбора города в списке нарисовать график (по его данным) II. После выбора некоторых технологических параметров преобразуем ряд данных для указанного города, например F(0.19,t1,t2,…); F(0.29,t1,t2,…); F(0.37,t1,t2,…); F(0.49,t1,t2,…); F(0.57,t1,t2,…); F(0.58,t1,t2,…); F(0.61,t1,t2,…); F(0.58,t1,t2,…); F(0.51,t1,t2,…); F(0.38,t1,t2,…); F(0.21,t1,t2,…); F(0.15,t1,t2,…) Этот ряд выводим на график. Этот график можно совместить с графиком для непреобразованного ряда (или не совмещать). Реализация задачи: Кликните здесь для просмотра всего текста
0
|
14.03.2019, 21:37 | |
1. Есть ли на форме ListBox1?
2. Файл InfoForTowns.txt находится в папке с программой (*.exe) и соответствует предложенной мной структуре? 3. Проверьте содержимое массива ln
0
|
1 / 1 / 0
Регистрация: 25.04.2017
Сообщений: 156
|
|
14.03.2019, 21:54 [ТС] | |
ovva,
Есть Файл находиться там где нужно Проверил, показывает Москва показывает что ListBox1.Items выдал ошибку System.NullReferenceException, странная ерунда Добавлено через 1 минуту System.NullReferenceException HResult=0x80004003 Сообщение = Ссылка на объект не указывает на экземпляр объекта.
0
|
14.03.2019, 22:14 | |
Выложите ваш проект.
0
|
14.03.2019, 23:18 | |
![]() Решение
Polyana1997, подправил то, что касается вывода графика (VS2017).
1
|
1 / 1 / 0
Регистрация: 25.04.2017
Сообщений: 156
|
||||||
15.03.2019, 01:48 [ТС] | ||||||
ovva, Все работает, запятую в блокноте вместо точки поставил и заработало!
Первая цель есть! Второе попробую сам, это вот эту пропорцию туда запихнуть, и нарисовать график в зависимости от города и выбранной панели. А скажите, что Вы именно сделали, что заработало? Я думал что - то в коде исправили, смотрю, копирую себе, все тоже самое, ошибка тоже самая (в моем проекте который я кидал выше, ваш работает). Добавлено через 1 час 33 минуты ovva, Спасибо огромное! Эта цель выполнена Вами и так как нужно! Осталось решить последнюю задачу
Теперь я вытянул из таблицы число (мощность). Принял её как Power = Integer. И вот она дает 200 Ватт, 0,2 кВт она не выдаст никогда. Мне нужно теперь посчитать её мощность пропорцией. Пример Москва 0.19;0.29;0.37;0.49;0.57;0.58;0.61;0.58; 0.51;0.38;0.21;0.15 Панель наша 200 Ватт Значит в первый месяц она выдаст x=(0,2*0,19)/0,1; Второй месяц x=(0,2*0,29)/0,1;Третий месяц x=(0,2*0,37)/0,1 и так весь цикл по всем числам наша Power прыгает. Вот я пытаюсь понять где график наш рисуется, как мне к этим числам прикоснуться, чтобы взаимодействовать с ними. Power это из DataGridView, я её кликабельно присваиваю, потом график будет сам строиться от этих кликов. Самое сложное это вот и все, тема закрыта будет. Я не прошу Вас сильно утруждаться, Вы много сделали но хотя бы направьте. Ещё раз спасибо за первую решенную часть!
0
|
15.03.2019, 12:46 | ||||
• считывает информацию из текстового файла • добавляет имена городов в список ListBox1 • добавляет новые объекты типа EngInfo в массив EI График по преобразованным данным строится аналогично, только массив данных нужно предварительно преобразовать. Все это есть в моем последнем примере.
1
|
1 / 1 / 0
Регистрация: 25.04.2017
Сообщений: 156
|
||||||
15.03.2019, 14:52 [ТС] | ||||||
ovva, Это моя невнимательность! Буду внимательнее!
Я ещё раз изучил предыдущую работу, там же Вы применяете t1 = 320, t2 = 400, это числа от фонаря
Как я понял, Enegry100 это вот эти числа, с блокнота, верно? Я уже придумал как вытягивать из таблицы данные, ещё более удобнее, все сделал. Сделаю через кнопку, при нажатии идет считывание мощности панели, на количество и сразу преобразование в кВт, чтобы размерность была одна и та же. Я понял про образец, я пытаюсь разобраться но что то голова лопается, мне же не нужен новый график, s2, мне нужен тот же график s1 просто при нажатии кнопки меняется информация полностью. Те 100 Вт, улетают, появляется выбранная, со своей мощностью, и с тем преобразовании. Добавлено через 56 минут ovva, У меня получилось! Только когда нажимаю кнопку, сделаю очистку, и график не виден, т.е. все вверх поднимается и ничего не видно, нужно размеры автоматические сделать, как то
0
|
1 / 1 / 0
Регистрация: 25.04.2017
Сообщений: 156
|
|
15.03.2019, 16:41 [ТС] | |
ovva, И ещё сразу спрошу
Автоматизировать график, это понятно (Не совсем) Там слева вверху 2 TextBox, один за зимний период Второй за летний, пользователь указывает туда числа Например в первое 45, в летнее 78, (к примеру) это как то тоже нужно показать. У нас есть база данных за год (т.е. название месяцев) как приучить, что зима это вот эти 3 месяца, а летние тоже 3, остальные 6 куда пойдут? Но я видимо плюну и сделаю одну прямую синим цветом (Зима), одну прямую оранжевого цвета Лето и все, не буду Вас мучить и себя, просто подскажите как её нарисовать. Добавлено через 1 час 28 минут Задача с размерами графика решилась! Осталось 2 Textbox и все
0
|
15.03.2019, 16:41 | |
Помогаю со студенческими работами здесь
19
Перенос нарисованного графика в chart
Вывод графика в Chart по данным из таблицы БД
Построение графика в chart Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
50 самых полезных примеров кода Python для частых задач
py-thonny 17.06.2025
Эффективность работы разработчика часто измеряется не количеством написаных строк, а скоростью решения задач. Готовые сниппеты значительно ускоряют разработку, помогают избежать типичных ошибок и. . .
|
C# и продвинутые приемы работы с БД
stackOverflow 17.06.2025
Каждый . NET разработчик рано или поздно сталкивается с ситуацией, когда привычные методы работы с базами данных превращаются в источник бессонных ночей. Я сам неоднократно попадал в такие ситуации,. . .
|
Angular: Вопросы и ответы на собеседовании
Reangularity 15.06.2025
Готовишься к техническому интервью по Angular? Я собрал самые распространенные вопросы, с которыми сталкиваются разработчики на собеседованиях в этом году. От базовых концепций до продвинутых. . .
|
Архитектура Onion в ASP.NET Core MVC
stackOverflow 15.06.2025
Что такое эта "луковая" архитектура? Термин предложил Джеффри Палермо (Jeffrey Palermo) в 2008 году, и с тех пор подход только набирал обороты. Суть проста - представьте себе лук с его. . .
|
Unity 4D
GameUnited 13.06.2025
Четырехмерное пространство. . . Звучит как что-то из научной фантастики, правда? Однако для меня, как разработчика со стажем в игровой индустрии, четвертое измерение давно перестало быть абстракцией из. . .
|
SSE (Server-Sent Events) в ASP.NET Core и .NET 10
UnmanagedCoder 13.06.2025
Кажется, Microsoft снова подкинула нам интересную фичу в новой версии фреймворка. Работая с превью . NET 10, я наткнулся на нативную поддержку Server-Sent Events (SSE) в ASP. NET Core Minimal APIs. Эта. . .
|
С днём независимости России!
Hrethgir 13.06.2025
Решил побеседовать, с утра праздничного дня, с LM о завоеваниях. То что она написала о народе, представителем которого я являюсь сам сначала возмутило меня, но дальше только смешило. Это чисто. . .
|
Лето вокруг.
kumehtar 13.06.2025
Лето вокруг.
Наполненное бурями и ураганами событий. На фоне магии Жизни, священной и вечной, неумелой рукой человека рисуется панорама душевного непокоя.
Странные серые краски проникают и. . .
|
Популярные LM модели ориентированы на увеличение затрат ресурсов пользователями сгенерированного кода (грязь -заслуги чистоплюев).
Hrethgir 12.06.2025
Вообще обратил внимание, что они генерируют код (впрочем так-же ориентированы разработчики чипов даже), чтобы пользователь их использующий уходил в тот или иной убыток. Это достаточно опытные модели,. . .
|
Топ10 библиотек C для квантовых вычислений
bytestream 12.06.2025
Квантовые вычисления - это та область, где теория встречается с практикой на границе наших знаний о физике. Пока большая часть шума вокруг квантовых компьютеров крутится вокруг языков высокого уровня. . .
|