Custom ToolTip when using a Tall Status Chart

Hey all,

I’m working with a status chart in the tall data format (8.1.6 - Ignition Designer - Vision), and I’m trying to use the getToolTipText extension function. The problem I run into is the seriesIndex parameter returns the “column” of the data you hover over, not the corresponding “row” which would make it useable for the tall data format.

E.g. I have 10 different series that I handle, and if I print out the seriesIndex, no matter where I hover it just prints 0 to 9, I believe since all series are contained in the same column when using tall format. Is my implementation or understanding of how seriesIndex would ideally work wrong, or is it a shortcoming of Ignition? Is there a way around this? Any help would be appreciated!

i.e. what would the indices be to find the correct row in the dataset that is available via getToolTipText

Thank you!
Kind regards,

Nathan

You should upgrade at your earliest convenience, as 8.1.6 was pulled due to a major bug affecting udt instances and their configuration being wiped in certain circumstances when importing tags

1 Like

Thanks for the reply nminchin, I’ve updated the version in case.

I think I found the solution to my problem, or well, resolved my confusion. If you do a ‘print’ of the series index it lists out the number of series in the chart no matter where your cursor is, but if you use it to access some data somehow it works out.

What I’ve had to do is use the seriesIndex to find out which series of data is being referenced, search through the data for the corresponding series, then find where the selectedTimeStamp falls within the referenced data. Is there not a simpler way? It works for now so not an issue, but it seems like a long way around to get to the solution.

Thanks!

e.g.
TS = system.date.fromMillis(long(selectedTimeStamp*1000))
for row in data:
if row[1] == nameOfSeries[seriesIndex]: # Check if row corresponds to series
if system.date.isBefore(row[0],TS): # Check if time is before selected timestamp
note = row[3] # Get the actual data I need for the tooltip
else:
break # break if time is after selected timestamp