I think it's a matter of population demographics and geography more than anything else.
The U.S. has 350 million people, spread over a very large land mass. Most of the areas were settled by people who were fiercely independent and needed guns for protection and for food, which instilled a very deep sense of weapon ownership entitlement, particularly in the rural parts of America that were largely ungoverned and required self-sufficiency.
It's a country founded by revolution, war and conquest and the quest for property and wealth, and violence has always been embedded in the American character. It's also one of the most diverse countries on Earth, populated nearly entirely by immigrants (at the expense of the native Americans we killed off) and racial, religious and cultural clashes have always been a source of tension. Hell, we only got rid of slavery 150 years ago and 50 years ago black people in the south had to use separate bathrooms, water fountains and stand in back of buses.
Add a poisonous political climate, high unemployment, broken families, a seismic gap between the wealthy and the poor, an unhealthy respect and tolerance for violence and alpha males, and a ceaseless media fixation with giving every idiot their 15 minutes of fame and you create a climate where the mentally unbalanced can easily be pushed over the edge.
But, also keep in mind that 99.9% of the population are law-abiding citizens who bring up their children well, work hard, and contribute to the well being of their community. You never hear about those people.