<br>Hi.<br><br>I suggest that graphs be generated on the frontend using js or some js library. This would be better than generating them on the backend and displaying the png's.<br><br>1. If done on the backend, all the load for generating the graphs for all user requests fall on the server. If the backend just sends back some data as JSON for the JS to plot the graph, the heavy work would be distributed to all user machines.<br>
<br>2. Since the user queries to plot would be dynamic say - "top N contributors for years X to Y in Z list", the images generated in the backend couldn't be cached as well. Hence, storing the images will only take up more space on the server.<br>
<br>3. Sending the image to frontend will take more time than sending data as json.<br><br>Regards,<div>Nikhil Bafna</div>