Bar charts & form entries

Hi,

I’m struggling to show data coming from a form on a chart bar.
My form receive numerical data from the students every week but I want to have a new bar on my chart after each submission per student. So I’m able to filter easily the data per students on my chart but automatically glide sum all data submitted by a same student in a unique bar. I have a column with date and time and I want to use it but I don’t know how to do it.

For example : John has made 3 submissions with the form with a 5 on Monday, a 4 on Tuesday and 10 on Wednesday but currently the bar chart show automatically only one bar with 19 (5+4+10). How my column with time and date can be used or setup to create 3 différents bars in my chart and create a new one for the next submission coming from John.

Thx in advance for your help

Something like this


image

1 Like

You’re going to hit a lot of limitations with glides implementation of charts. I would recommend using quickchart.io to have a lot more flexibility and control over the data. It’s a little more work to build the url for the quickchart image, but it’s worth the effort in my opinion.

This is one example of a chart that I have in one of my apps.
image

4 Likes

I’ll second what @Jeff_Hager said. Here’s some more examples of charts built using quickchart.io

4 Likes

@Jeff_Hager @Darren_Murphy Have you guys ever run into quickchart’s rate limits being enforced with your charts?

Yes, I have. I got around that by purchasing an API key.

I’ve also bumped into the URI character length limit, and I’ve worked around that by encoding my chart definition as Base64 and using the encoding URL option.

Ideally, I’d like to bypass the URL method and use the Quickchart API, but I haven’t figured out how to do that directly from Glide yet - might be possible with an experimental code column. Easy enough with Apps Script of course, but that would introduce delays that would mess up the user experience.

3 Likes

I haven’t, but admittedly, I haven’t had high usage. I’ve used it more for personal use. It seems pretty good at caching images though, so if the data doesn’t change often, you might be able to get away with not bumping into limits.

I’m not sure how reliable this link is, but it indicates that there is a 20,000 chart limit on the free tier.
http://54.90.241.242/pricing

4 Likes

Hi,

So thank you for your answer but I m not sure you get what I want to do or need.
I m using Quickchart often but I don’t know how to generate a bar at each new submission. FYI, each students will have no more than 10 submissions at the end of the period.

See attached some screenshots about my data (form submissions google spreadsheet) and the result I want to have with glide with the chart component or with quickchart.

thank you for your help of advice

The general approach to this is to create two joined list columns.
One will be for the chart labels (the dates), and the other will be for the chart data values.
Then you use those joined list columns as replacements in your chart template column.
In your case, as you only want a subset of the data you’ll need to apply a filter. The way I do this is to use two if-then-else columns. One for the dates, and one for the values. If the data in the row meets the filter criteria, return the date/data value, otherwise return blank. And then use the if-then-else columns for your joined lists.

1 Like

Quickcharts will definitely be more powerful and flexible but for this specific need would this not work ?

I understand the built in chart components are limited but are there other bug related issues that I am not aware of ?

Add a choice button so that you can select the student and then in the chart component use a filter on the chosen choice. Not sure if the “student choice” should be a USC (user specific column)


1 Like

They are fine for simple use cases.
But I tend to use QC (even when I don’t need the extra functionality) just so that I can maintain a consistent look to my charts.

2 Likes

Thank you @Dan_San
It is exactly what I want but could share with me how you set-up the chart bar component and your table in order to have this result. My use it pretty basic.
Your sample app it is not accessible for me

thx very much in advance

Sure no problem. I’m also fairly new here, how do I share ?

I think I figured it out, try now please.

1 Like

Thank you @Dan_San
Now I need to figure out how to manage entries without data because my form gather information also for different type of exercises. So basically “John” uses the same form for “number of shoot” and “number of turnover”…but it creates a row with a date for each submission. As a result, when “john” submits data for “number turnover” the chart for “nb shoot” shows a empty or 0 bar…

Untitled3

So the question is how to get ride of the submission with no value.

@Darren_Murphy & @Jeff_Hager could you let me know how you use Quickchart in my case so basically how to manage quickchart without knowing in advcance the number of entries who are going to be submitted. Usually for Quickchart I set-up in advance the number of data I’m going to receive so for instance Week1, Week2, Week3 (user slection before submitting his data) …and I set-up my quickchart with a template in glide with # for week1, ## for week2, ### for week3…in your senario you explained before, it seems that a bar is added at every entries . How you do this magic trick :slight_smile: ?

Thanks

Like this:
Firstly, create two if-then-else columns:

  • If there is data, return the data
  • Else return blank

Create a similar column for your chart labels (dates):

  • If there is data, return the date
  • Else return blank

The next step is to create two joined list columns, one for each of the two if-then-else columns.
And then finally, use the joined list columns as the sources for your chart.

2 Likes

Hi @Darren_Murphy
Thank you for your help.
I tried your explanation but I m doing something wrong or I missed a step because when I use the 2 join list created it is not showing any data on the bar chart.

Thx

How are you injecting this to the actual chart?

Yes I use the join list data column and join list data-date column with a glide chart bar component

I think when Darren suggested you to do the way above, he was expecting you to try Quickchart.

You may need to go to Quickchart depending on your logic but I’m trying to understand your submission form. Lets say you have 10 different types of submissions and as a student I enter 1 submission at time then are you creating 10 rows each time I submit (9 empty rows) so by the time I have entered all 10 I would have created 90 empty score rows ?

If you have 10 excercises, are students supposed to enter scores for all 10 excercises every week, so at the end of the 10 weeks you will have 100 scores for each student ?

  1. Instead of creating a new row for each test, would creating a new column for each test be better (take a look at my example, I did some mods) You can then see all the results

  2. For your current structure of multiple rows per submission, would putting in a dropdown (choice button) where the student chooses which submission he is making ?