Vision: Displaying a Chart with slow-changing tags

The biggest complaint our customers have and that I have has always been how trending is handled by the Vision charts.

For a point that doesn’t change very frequently, such as the below temperature setpoint (top plot, blue-green colour pen). The chart below is set to Fixed resolution mode with 1200 points.

This is the actual data points in the history for the displayed period above.
As you can see, the setpoint is not ramped down, but is rather changed from 30° to 12° sharply.

If I change the history resolution mode to Raw, it’s far better:

However if I zoom into the chart, it becomes utterly useless:

How have others worked around this? The only way I can see to avoid this is to setup relatively fast logging of history, e.g. set max time between samples to 10s. However this completely destroys the point of using “compression” on the trend data to reduce data points, filesize, and chart performance… If this is just how I have to do it though, then I guess that’s what I have to do…

Are any of these issues resolved in the new Perspective timeseries chart and soon-to-be “EasyChart”?

1 Like

You need to set the pen type on the chart to ‘digital.’ That will allow it to show step changes rather than linear interpolation.

1 Like

This still doesn’t work for Fixed resolution mode. It works in Raw mode, but still the same issue when you zoom in.

I know the reason why these sections are missing as I’ve asked the devs before (due to the underlying JFreeChart not being able to read data outside of its window), however this sounds like a very good reason not to use the JFreeChart and replace it imo. Trending in SCADA is a huge ticket item and therefore it should come with at least the basic functionality of displaying data as an operator would expect to see it, regardless of how often the tags are updated, the tool should be able to pull in data either side of the chart window so that lines can be extended to the chart bounds

I don’t think you can completely get away from needing to have two points on your chart. As far as I’m aware, the only way to ensure this happens is to set a max logging time for each tag that’s suitable for the scale that users might want to zoom to.

It would be really nice if they could add a feature to the charts to have them draw a flat line to the first point (and from the last point to the right) so that digital graphs didn’t look incomplete when you zoom in. Even with the limitations you mentioned, it should be possible for them to make a fake point right on the edges of the chart.

Edit: Actually this could be quite misleading if Ignition wasn’t actually receiving any data for an extended period of time and you showed a device as having a set point of x for that whole period. Logging the data periodically for integrity’s sake is probably the answer.


Have you tried setting the margins on the X-Axis to 0?
That should address the zoomed in lack of data on the sides.

+1 for this for sure.

This is an issue that we have had with PID Loops etc… where the SP hasn’t changed in days or weeks. In order to get around this we set the SP tag to log at least every x seconds. Yes it eats up storage but it gives the user the info that they need.

1 Like

Agreed that this behavior isn’t ideal, but I’m not sure there really is a solution. Charts asking for data outside the date range is, as much as I hate this argument pattern, a slippery slope. How far outside your date range do you go looking for data? If you don’t find any, what do you do with the data you’re presenting?
There’s no way (for the chart) to distinguish “data was never logged for this time period” from “data was not found for this time period” - so at some point you have to choose between rendering gaps, or rendering lines that connect to data that does not exist. Neither is a perfect solution, but one involves outright fabrication.

Also, at this point Vision is essentially feature complete. It’s pretty unlikely we’ll add a new charting component, and it’s absolutely guaranteed that we’re not going to remove JFreeChart from Vision (or Reporting).

Storage is cheap. Process uncertainty can be expensive. No charting technology can wave a wand to magically fix the lack of data.

1 Like

I hope you don’t mean there won’t be any polish applied. Things like modern identity providers, websockets, and an up-to-date look and feel will still be needed for a few years. (Until Perspective can do everything Vision can do, that is.)

Yes, that’s a good point. I should amend - in terms of components, Vision is essentially feature complete. There are definitely other modernizations that are still happening, including for 8.1.

1 Like

I am really glad you clarified that…