alpriest / EnergyStats-Android

MIT License
3 stars 3 forks source link

Group charts in Parameters by units #6

Closed TonyM1958 closed 10 months ago

TonyM1958 commented 1 year ago

I think you said it was early days for Parameters, so you may already be working on things... just let me know if you have enough ideas and suggestions already! None of these are urgent.

When you select a variety of parameters, the vertical axis of the chart currently mixes values. Suggestions:

  1. add the units to the selection list to make it a bit obvious which items work together
  2. group the parameters selected by units and display on different charts with the unit displayed on the axis

So, if you select PV1/PV2 Voltage, PV1/PV2 Current (for example), each parameter is displayed with an appropriately scaled vertical axis. Or, if you select a range of power values and temperatures, the temps appear on a separate chart with C. The horizontal axis of the charts are synchronised, of course.

Off the top of my head, I think there are 5 potential charts based on %, voltage, current, power and temperature?

Also when selecting 'Compare Strings' include PV Power as well as PV1, PV2, PV3 and PV4 power so you get the total power as well as the individual contributions.

alpriest commented 1 year ago

It's early days, but my todo list for parameters was empty :)

I've just pushed an update to append the Unit alongside the parameter to make it easier to see. Grouping the parameters by Unit makes sense too i've just got to figure a pleasant way to display the visiblity/summary toggles beneath the chart.

Also I'm not entirely sure how FoxESS run their rate limiting algorithm and whether they take data volumes into account. I might consider fetching all variable values and then making the UI purely an in-memory display to reduce load. There'd be a small issue to determine when a new fetch is required but it's reasonably trivial.

TonyM1958 commented 1 year ago

BTW - not holding this up as the best example, but I added some plotting functions to my cloud library. Feel free to have a look through the code if you want to see how it works - sure you will be do it better though! Couple of examples:

image

image

image

alpriest commented 10 months ago

This was added recently.