Номер элемента в XY Graph

Обсуждение вопросов, связанных с обработкой аудио и видео информации

Номер элемента в XY Graph

Postby kiparym on 23 Sep 2015, 13:11

Всем добрый день! Требуется совет!
Как на графике XY Graph с неравномерной шкалой X определить элемент массива, на который указывает указатель мыши. За ранее благодарю.
User avatar
kiparym
advanced
advanced
 
Posts: 161
Joined: 06 Sep 2011, 08:52
Location: г. Саров
LabVIEW Version: 8.2 & 2011
Karma: 28

Re: Номер элемента в XY Graph

Postby Borjomy_1 on 23 Sep 2015, 17:37

Определить по указателю мыiи нельзя. Можно по положению курсора (Cursors). Предварительно надо добавить курсор и настроить.
Далее есть такой элемент "Threshold 1D Array". подаете на него массив X составляющих графика и полученные координаты курсора в Event XYGraph/Cursor Release (свойство CursLoc.X) На выходе получаете индекс элемента, необходимым образом его округляете и получаете ближайшую точку. Если график не монотонно возрастает по шкале X, то программа будет немного сложнее.
Borjomy_1
expert
expert
 
Posts: 1908
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 332
VIP

Re: Номер элемента в XY Graph

Postby kiparym on 24 Sep 2015, 09:25

Спасибо за подсказку!!!
Что касается обнаружении указателя мышки, то может быть можно (после нажатия клавиши мышки) пересчитать по пикселям – Event Structure -> «XY Graph» : Mouse Down -> Coords -> ???.
User avatar
kiparym
advanced
advanced
 
Posts: 161
Joined: 06 Sep 2011, 08:52
Location: г. Саров
LabVIEW Version: 8.2 & 2011
Karma: 28

Re: Номер элемента в XY Graph

Postby Borjomy_1 on 24 Sep 2015, 20:53

Есть свойство Plot Area Bounds, которое содержит координаты рамки графика. Есть также свойства XScale.Range.Maximum и Minimum
Зная размеры графика в пикселях и единицах диапазона шкалы, можно, путем вычислений, таки получить искомое. Дерзайте.
Borjomy_1
expert
expert
 
Posts: 1908
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 332
VIP

Re: Номер элемента в XY Graph

Postby kiparym on 25 Sep 2015, 11:31

Спасибо Borjomy_1. Идея понятна, но в моём случае наблюдается нестыковка.

p.s. Вероятно, необходимо учесть размер ½ указателя мышки?
Во вложении решение поставленной задачи.
Attachments
Положение курсора.jpg
Позиция мыши на XY-Full.vi
(18.64 KiB) Downloaded 115 times
User avatar
kiparym
advanced
advanced
 
Posts: 161
Joined: 06 Sep 2011, 08:52
Location: г. Саров
LabVIEW Version: 8.2 & 2011
Karma: 28

Re: Номер элемента в XY Graph

Postby Borjomy_1 on 25 Sep 2015, 21:41

Почему не использовали Plot Area Bounds?

з.ы. Как вы думаете, что будет, если цикл формирования графика переместить правее основного цикла (поменять их местами на диаграмме)?
Attachments
s2.PNG
Borjomy_1
expert
expert
 
Posts: 1908
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 332
VIP

Re: Номер элемента в XY Graph

Postby kiparym on 26 Sep 2015, 17:07

Borjomy_1 ! Ваш вариант действительно лучше. Думаю, что элемент «Plot Bounds» всё-таки необходимо выделять из «XYGraph (strict)»- так более логично.
Что касается перемещения формирования графика внутрь цикла, то это противоречит поставленной задачи. Я должен исследовать уже имеющийся график данных.
User avatar
kiparym
advanced
advanced
 
Posts: 161
Joined: 06 Sep 2011, 08:52
Location: г. Саров
LabVIEW Version: 8.2 & 2011
Karma: 28

Re: Номер элемента в XY Graph

Postby Borjomy_1 on 26 Sep 2015, 17:27

если цикл формирования графика переместить правее основного цикла
Имеется в виду то, что порядок несвязанных операций в Labview не определен. Теоретически они выполняются одновременно. В вашем коде это маловероятно, однако в будущем рекомендую все-таки явно указывать порядок вычислений, например, с помощью Sequence
Borjomy_1
expert
expert
 
Posts: 1908
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 332
VIP

Re: Номер элемента в XY Graph

Postby kiparym on 26 Sep 2015, 18:19

Имеется в виду то, что порядок несвязанных операций в Labview не определен
Если в отладочном режиме определена последовательность выполнения действий, то есть гарантия, что данная последовательность сохранится в EXE?
(Но это уже другая тема!)
User avatar
kiparym
advanced
advanced
 
Posts: 161
Joined: 06 Sep 2011, 08:52
Location: г. Саров
LabVIEW Version: 8.2 & 2011
Karma: 28

Re: Номер элемента в XY Graph

Postby Borjomy_1 on 26 Sep 2015, 23:40

Гарантий нет. Поскольку отладочный режим больше времени тратит на проведение "шарика" по тренду. Чем длиннее линия, соединяющая два компонента, тем больше времени занимает передача значения. В реальности длины линий никакого значения не имеют, а имеет значение время выполнения компонент.
Borjomy_1
expert
expert
 
Posts: 1908
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 332
VIP


Return to Работа с графикой и звуком

Who is online

Users browsing this forum: No registered users and 0 guests

cron