-
Notifications
You must be signed in to change notification settings - Fork 7
Plot drawing method #33
Comments
We were having some troubles with some of the request from the users and their implementation, and we also see those drawbacks. Some of us (I will not name who ;)) were lobbying for testing client side rendering (at least for testing purposes), but as you point out, downsampling can be tricky... For me, the main question is what is the longterm objective of this app. I see it as a basic data display application. Being the main purpose helping commissioning, maintenance and internal reports (not basic as in simplicity ;)). If the user wants high quality plots and/or fancy plotting features, then, they should download the raw data (via this app or through the api) and plot in any other software (e.g. matlab, origin...). So, as long as we manage to add the main features that were requested (mostly make easy the curve differenciation), we can keep the server side rendering. Assuming that we can fulfil those requriments. And also, assuming that we can communicate our users about the limitations and that they understand them. I can see that a trial for a client rendering should not take too long, but then we open the door for an endless feature request list, and perhaps, ending up building something bigger than it should. |
Yes, maybe the thing we need is actually a specification of the scope of the project, i.e. what problem are we trying to solve. To me, the main idea was to make a tool for technical users to quickly look at any historical data. High quality presentation or advanced analysis features was not high priority, so it made sense to compromise on visual quality in exchange for "heavy duty" plotting capability. In the end, obviously the users are the only ones who can decide what works for them. I think we should make an effort to solve the main issues they have and then re-evaluate this? I think the trickiest part of the application right now is anyway the data fetching from the DB, so replacing the plotting part is not a huge deal. I have a feeling it could lead to a rabbit hole though... :) |
I am away this week (work travel) and on vacation the next one. On my return I will trigger the discussion internally and depending on the outcome we may reconsider the steps to take. |
Great! |
I'd like to discuss the pros and cons of the current method of drawing, now that the application has been in use for a while. Feel free to add your observations and opinions to this issue. If the drawbacks are too large, we should start thinking about a new solution.
The plots are currently completely drawn on the server, as an image in whatever size the client requests, and sent to the client as a single base64 encoded PNG. To do this we use datashader (http://datashader.org/).
Advantages
Disadvantages
Other notes
Alternative solutions
I haven't checked the options during the last year so I may be missing some important ones, but to me there are two main options:
The text was updated successfully, but these errors were encountered: