Yeah, I tried venturing into PvP and it was basically a shitshow every round. There was some rank 1 on the other team just destroying us with the blue Egyptian rocket girl...almost seemed like hacking but I dunno. Playing with randoms just sucks, no one wants to support the team and everyone just picks the offensive characters, even on defense. Several times I was forced to switch characters just because no one else would play a healer of any kind.
I need some sort of a chart showing which characters counter which others, and why...it doesn't seem obvious to me.
It's frustrating when your team doesn't want to play anything like a "proper" composition, I agree. As for hero counters, some of it can be pretty situational but:

Some of these aren't completely accurate(I'd argue that, for example, Roadhog is a pretty poor counter to Pharah unless the Pharah isn't very good), but it should give you an idea. As for the "why", with 21 heroes having several counters each, that would take...a lot of text to explain. A lot of that understanding will come from practice, playing the game and getting a better understanding of each heroes individual strengths and then thinking about what would put them off-guard. You can see that Hanzo and Widowmaker both have Winston listed as a counter - Winston can counter their mobility with his leap, he can get over the enemy to the backfield(where Hanzo and Widowmaker are likely to be) with his leap, his weapon can track them easily which is a sort-of soft-counter to their mobility as well, and his dome can shield him from incoming fire from the enemies he leaped over to get into the backfield while he deals with the snipers.