How to get graphs working beyond daily graph - for temperature logging

Tags: #<Tag:0x00007fc35161b400>

I’m using emoncms as a repository for data from a dozen ds18b20. I am currently receiving the inputs and have those going in to one feed.

I am logging every 15 minutes currently and I can display the results in a daily graph / data viewer. However, when I switch to the weekly view I don’t see any data.

What needs to happen to see the data over a period longer than a day? Do I need to create a virtual feed?


It would be helpful if you can describe (or show pictures) of your config.

I believe each Input should go to individual Feeds (unless you’re making calculations with the inputs before logging) and those feeds would then be used in the Daily Graphs.

You should resolve this issue first.

Hi @montgomeryb - welcome.

Is this a fresh install? As Neil said, screenshots will be useful. I’ll bump your trust level.

1 Like

Thanks, I appreciate the reply.
image On the 'D’aily section of the graph I get a good response: image but when I switch to the weekly view I get nothing.

seeing the section at the bottom of the page makes me think I need to do some sort of aggregating of the feed? Ideally, I’m just looking for something like the first graph but just over more than a 24 hour period.


Thanks, I installed emoncms locally last year to try and interface with my pv system but I couldn’t get the data out of it so it sat dormant. I did upgrade it recently and as far as I can tell it’s at 10.2.0

I think the issue is the scale and only taking readings every 15Min. Usual rates are between 10-60seconds.

If you zoom in and click the show missing data check box, what do you see?

@TrystanLea can you help?

I would create new feeds with a much shorter cycle - data storage is not a problem.

Thanks Brian,
The unit sending the feeds is only sending every 15 minutes - I’m thinking that’s what I need to change, to say every minute?
I did try zooming in and adding show missing data but it still shows no data.


I’ve just realised that was utter and total garbage! I’ve got a Speedtest result I am logging on an hourly basis and it works fine! Doh! No idea what I was thinking.

How long have you been recording the data?

At what zoom level do you still see data?

I haven’t been recording it too long, several days. Your comment about zoom level did inspire me though … If I click on the ‘D’ for where I see data, I can then change the start date. My data only starts 8th March but I can go back to March 1st. After that though I get:

If I go back to the ‘D’ button it resets to the preceding 24 hours, but if I hit the ‘-’ button it goes blank and tries to show the preceding 48 hours.

Though … experimenting more, some progress. Not knowing any better, when I set the feeds up for the inputs I set the fixed rate at 120 seconds.
I noticed that on the graph, hitting the zoom level changed the fixed interval setting to 180. If I change that setting to a multiple of 120 I get data displaying.
A similar thing for ‘M’ - it changes the interval to 3600. Now I would have thought that would work being a multiple of 120 but it doesn’t. 3849 does though as does 1920 and 960.
Zooming with + and - changes the interval to numbers the graph doesn’t like. I’m not sure what the reasoning is but it feels like progress :grinning:

To the best of my knowledge, the reasoning is:
If the data point the graph wants exists, it uses it.
If the data point doesn’t exist, it uses the nearest.
If the data point nearest contains a null value, it uses it.

The catch is, the way it records data is:
The data arrives. If a new value arrives before that one is logged, the first gets overwritten.
If no data arrives before the time comes to log, it records a null value.

So your data should arrive the same as or faster than the logging times in order to not record null values.

What you’re seeing then is if your zoom level happens to land on non-null values, you see data. Otherwise you’re looking at nulls.

So I’d say you need to log every 15 minutes, if that’s the rate at which data comes in. Or 15m 1 s if you want to be sure never to have a null recorded, but the cost is you lose a data point once in a while. Of course, if the incoming data just misses a recording slot, it’s logged as arriving 15 mins later than it actually did.

The cure for that, given the data rate is so slow, may be to use the PHPTimeseries, which stores the time as well as the value for each data item. We normally don’t use that with energy data arriving every 5 or 10 s, because it costs dearly in data storage space, but for your purpose, it might be ideal.

Thanks for your everyones assistance. I think this is the solution. I added a feed with the PHPTimeseries and it’s been running for a few hours and I can use the +/- buttons as well as the W, M & Y buttons.

I don’t want this to sound whiney - but I have had difficulty finding good user documentation - and I know this isn’t the typical use case for the project. I’m not sure if I just haven’t looked in the right places.

Hello @montgomeryb

Did you create the original PHPFina feeds with 15 minute intervals? E.g:

In the weekly view have you tried turning averaging on, e.g:

@montgomeryb, If you can’t remember, on the Feeds page, mouse over the feed name and a pop-up will tell you the feed parameters.

1 Like

Hi Gents,
So, I had the original feeds set as 2 minutes - couldn’t tell you why I picked that number exactly :smiley:, I think maybe as a compromise?

Anyway, selecting the average check mark on my original feed does show data

So, that is another option - although I think the time series is the way to go here.

Thanks again for your assistance.

Thanks @montgomeryb, its important with PHPFina feeds to use a feed interval that matches your post interval. So if your posting the data every 15 mins the feed interval needs to be 15 mins otherwise you will see empty graphs (if averaging is turned off).