Hi @Anonymous! What you are proposing is definitely possible, though the charts in Power Apps can be a bit basic. If you are used to something like Power BI or Excel, you may find that the customization and design are pretty limited. That said, there are creative things you can do using other types of controls. @WonderLaura posted a blog that details one method of using a gallery to do this. (She also covers the Power BI and built-in charts as well.) You could also use shapes outside of a gallery or SVGs to do similar things. Here is a nice SVG example.
To create a simple column chart using the built-in column chart, you would want to create a collection of the categories you want and the totals of said categories. This can be done fairly easily if you have a simple way to count and define the items. From what you describe, it sounds like this might be one way you could approach it:
/* Note: This could go in the OnVisible property of the screen these charts are on or a loading screen, etc. */
/* Set a global variable for today's date so the Today() function doesn't have to run but once */
Set(TodaysDate, Today());
/* Collect a table for the chart containing the category titles and counts of items that align with those categories */
ClearCollect(
colActiveStatusChart,
{ID: 1, Title: "1 Day Due Date", Amount: CountIf(DataList, ProposalStatus = "Active" && (DateDiff(Due-Date, TodaysDate, Days) = 1)},
{ID: 2, Title: "Exceeded Due Date", Amount: CountIf(DataList, ProposalStatus = "Active" && DateDiff(Due-Date, TodaysDate, Days) >= 0)},
{ID: 3, Title: "Others", Amount: CountIf(DataList, ProposalStatus = "Active" && DateDiff(Due-Date, TodaysDate, Days) < 1)}
)
In the column chart, you would set the Items property to colActiveStatusChart and then set the Labels value to Title and the Series1 value to Amount. This specific approach will probably need to be modified but, hopefully, it gives a reasonable view of how to start.
Some notes: I always add an ID field as a way to give a custom sorting method. In the Items section of the column chart control, you can put
/* Sort the chart Items by ID */
Sort(
colActiveStatusChart,
ID,
Ascending
)
(or something similar), which along with changing the IDs as needed will make the categories appear as you want them to. Also, having short titles is best as the only control you have over the axis titles is font size and the angle they sit at.
As far as the numerical and dollars term values mentioned, you can use a text label and the CountIf or Sum functions along with some filtering to produce what you need. Maybe something like:
/* Count of projects with Closed - Won proposal status */
CountIf(
DataList,
ProposalStatus = "Closed - Won"
)
/* Sum of dollar term values for projects with Closed - Won proposal status */
Sum(
Filter(
colData,
Proposal = "Closed - Won"
),
DollarTermValue
)
Along with some clever formatting, you can make these items look quite nice and add some conditional formatting to them (like having the text for the counts and sums above turn red if they hit a certain amount and green if they hit another using the Color property).
I hope that gets you going in a good direction but if I can elaborate more or help with specific details, feel free to let me know!