Python - What is the process to create pdf reports with charts from a DB? : <p>I have a database generated by a survey to evaluate university professors. What I want is a python script that takes the information from that database, generates a graphing table for each user, creates graphs for each user, and then renders it in a template to export it to a pdf.</p>

<p><strong>What does the database look like?</strong></p>

<pre><code>User    Professor_evaluated  Category       Question    Answer
_________________________________________________________________
Mike    Professor Criss       respect           1         3
Mike    Professor Criss       respect           2         4
Mike    Professor Criss       wisdom            3         5
Mike    Professor Criss       wisdom            4         3
Charles Professor Criss       respect           1         3
Charles Professor Criss       respect           2         4
Charles Professor Criss       wisdom            3         5
Charles Professor Criss       wisdom            4         3
</code></pre>

<p>Each teacher has several categories assigned  to be evaluated (respect, wisdom, etc.) and in turn each category has  associated questions. In other words, a category has several questions. Each row of the DB is the answer to a question from a student evaluating a teacher</p>

<p><strong>What do I need?</strong></p>

<p>I need to create a script for automatically generate pdf reports that summarizes this information through charts, for example a chart with the overall score of each teacher, another chart with the score of each teacher by category, another chart with the average of each student, etc..Finally, every teacher would have a report.I want a report like this<a href="https://i.stack.imgur.com/Vi8Yp.png" rel="noreferrer"><img src="https://i.stack.imgur.com/Vi8Yp.png" alt="Example"></a></p>

<p><strong>What is my question?</strong></p>

<p>my question is about which python packages and modules I would need to do this task. And what would be the general process of doing so. I don't need the code, because I know the answer is very general, but the knowledge of how I could do it.</p>

<p><em>For example: you would first need to process the information with pandas, to create a table that summarizes the information you want to graph, then plot it, then create a template of your report with XYZ module and then export it to pdf with XYZ module.</em></p>
