Frida Kahlo was one of Mexico's best-known 20th-century artists. Her painting reflected her tumultuous personal life, including her two high-profile marriages to fellow artist and communist Diego Rivera.

Childhood

Should have taken the train … Frida recuperates after the bus crash PR

Young Frida (Salma Hayek) is on a bus to Coyoacán, fighting with her boyfriend about Marx and Hegel. The bus crashes into a tram. Frida is crushed and knocked unconscious, covered in blood and gold dust spraying out from a cone carried by another passenger. It's an arresting setpiece, and, though it looks like a heavy-handed piece of artistic licence, it's accurate. Frida did indeed get covered in gold dust during this crash, and was very nearly killed. Afterwards, recuperating in bed, she begins to paint. When she recovers, she takes her canvases to the famous Diego Rivera (Alfred Molina), who was then beginning the splendid murals at Mexico City's National Palace.

Society

Two to tango … Frida and Tina PR

Impressed, Diego takes Frida to a party. It's basically your standard night out in Mexico City during the 1920s: socialism, lesbianism, tequila shot competitions, and Diego going nuts and shooting a gramophone. The real Diego did once go nuts and shoot a gramophone, so that's fair enough. The film gets creative with the facts when it has Frida seduce Italian photographer Tina Modotti (Ashley Judd) in front of everyone, but it is true that she was bisexual. In real life, Modotti may have introduced Frida and Diego. Both of them told several different versions of the story of how they met.

Love

Hopping mad … Frida and amphibious Diego Ronald Grant Archive

Her flirtation with Modotti fizzles out, for Frida is smitten with Diego. It's not entirely clear why. He's way older than her, looks like a sack of potatoes with a hangover, demands constant feeding, and refuses point blank even to consider being faithful. This is accurate. Moreover, in real life, Diego was much less physically prepossessing than Alfred Molina. "Diego is an immense baby with an amiable face and a slightly sad glance," the real Frida wrote. "Seeing him nude, you immediately think of a boy frog standing on his hind legs. His skin is greenish white like that of an aquatic animal." She couldn't keep her hands off him. It wasn't just her, either. Rocking the greenish-white frog baby look, Diego notched up affairs with scores of beautiful women, including the film stars María Félix and Paulette Goddard.

Politics

A pyramid with a view … Frida and Trotsky PR

Diego materialises while Frida is tending her mother's grave, and asks her for a favour. "You've got a lot of nerve to come here asking me to do you favours," she growls. "No, it's not for me, it's for Trotsky," he pleads, earnestly. Sometimes, this clunky script is so bad it's unintentionally funny. "The Norwegians have expelled him, no other country will take him, and Stalin wants him dead!" OK, OK. The exiled Leon Trotsky (Geoffrey Rush) moves in with Frida, and together they climb the pyramids at Teotihuacán. Whether or not they did this, the sequence made the historian happy because Teotihuacán is one of the most remarkable pre-Columbian sites in the Americas.

The film is correct in saying that Frida and Trotsky had an affair. But it also suggests that Trotsky moved out of Frida's house specifically to avoid falling in love with her, and instead went to the less secure digs in which he would shortly meet with the pointy end of an ice pick. "You know what the consequences of this could be?" shouts Diego. This is wildly unfair, implying that Frida's libido was somehow to blame for Trotsky's murder. In real life, both she and Trotsky did pull back from the affair – but she left for Paris, and allowed him to stay in the house. He moved out while she was abroad, possibly owing to a disagreement with the volatile Diego.

Verdict

Green to match your thighs, darling … Frieda and Diego snuggle up PR

The plodding, glumly literal screenplay holds this otherwise expressive biopic back, but it's still a colourful and entertaining watch.