I agree about it seeming a terrible representation of your work. I've been working around the problem, but I'm pretty dissatisfied with my workflow. So I did some more digging.
And it turns out what I wrote last night was a little inaccurate. It's not the master, but the 'default' that is the only branch that can populate commits onto the graph, but it happens to be that default is set to master. It sounds like you can set the default to another branch to reflect the commits you make there.
It seems a little tedious, but it's a solution. Not sure if commits appear or disappear on your graph though if you're setting your default to something else all the time. Might be worth experimenting with!
By the way, have you figured out yet what the cause has been for you?
I haven't been able to figure it out because it seems like even if I'm working in the default branch the commits may or may not show up on the contribution graph. As long as the commits are showing up in the repo itself I'm not too worried about it, just wish the work was reflected in a better way.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.