Jump to content

Time based Alarm / Text data


Recommended Posts


I have the following problem. The data is Alarm data => Every time an alarm event occurs the alarm state switches to a distinct alarm or warning level. The levels are textual states. Visualization shows a step chart. Now I want to show lines for the distinct levels ("Warning low", "Warning high", "Alarm low", etc.).

I tried to develop a Formular by creating a signal (toSignal("Warning low")) and combine both Y-Axis. This brought me the error "String data can not be placed on the same Y-axis with other data types."

Does anybody has an idea?

Thanks, Kai

Link to comment
Share on other sites

Guest Jon Peterson

 Hi Kai,

Plotting strings is somewhat arbitrary. Our current algorithm can only deal with the strings in a given signal--for the strings in a given time range we can assign an integer based on alphabetic order and plot them. For example, if I had a string tag with says of the week, they would be plotted from low to high, Fri, Mon, Sat, Sun, Tue, Thur, Wed.

At this time the order can only be established within one signal, therefore we don't allow combining axes with string signals. Now, I can imagine an algorithm that sets the relative order from the set of all string values, over the plot time range, from all the signals sharing the same axis. But, that would still be an arbitrary order that will change every time the time range resulted in a new set of strings. So, I am not sure how useful that approach would be. I tried to illustrate this with a couple plots of a string tag showing the days of the week. 

The proper way to do this is via an enumeration. For example, OSIsoft PI's digital state tags. Seeq does not have an enumeration type yet, but it is the feature request queue. 

Is there any chance the underlying data source is a digital state PI Tag? 

I will explore some other options and do a posting with what I find. If others have a solution, please join the conversation. 


Jon Peterson



Link to comment
Share on other sites

Guest Jon Peterson

I did a quick exploration using data from our test PI Server and digital tags. Seeq does not support enumerations--they are converted to strings. But, Seeq does preserve the order established by the digital set in PI. I never tested this until now--I plotted two tags sharing the same digital state set and tried to combined the lanes and axes. This returned the same error--the y-axes could not be combined into one. I've got a few more things to explore.

Link to comment
Share on other sites

Good morning Jon,

Thank you for your answer. That's what I thought but i just wanted to make sure. I will find a way that the data is getting an enumeration type. Maybe there will be a feature/function like factor() from R in a future version. Factors in R are used to represent categorical data and are stored as integers. But this is just an idea for a future version.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...