Selective breeding has produced a dazzling array of platys. This, coupled with their low cost and easy-going demeanor, has made them common aquarium fish. However, you need to take care when selecting their tank mates.
Platys are considered community fish. This means they generally get along with most aquarium fish, so long as the other fish don't trouble them. However, platys are on the more aggressive end of the community fish spectrum. In particular, platys may nip at the fins of long-finned aquarium fish. However, they could have a hard time standing up to more brutal tank mates. In general, you have to worry more about other fish picking on platys than vice versa.
The phrase "semi-aggressive" can refer to a few different kinds of fish. Sometimes, the phrase is used to describe fish that might eat smaller fish, but are otherwise mild-mannered. Research the specific species you want to keep. Platys usually only grow to about 2 inches in length, so a medium to large fish might prey on them. Make sure the fish in question does not get large enough to make a snack of platys.
Some semi-aggressive fish get this label from a territorial disposition. With such a tank mate, platys will never be the aggressor. However, many territorial fish will stake out an area on the bottom of an aquarium. If a fish is not ridiculously territorial, it might not mind platys, which tend to school in the middle to upper levels of an aquarium. So this type of semi-aggressive fish can likely share a tank with platys without incident.
Platys are closely related to swordtails. Swordtails are almost physically identical to platys, except the males have an extension on the base of their tail fins. However, swordtails have a somewhat more aggressive demeanor than their platy relatives, making them better suited for holding their own against semi-aggressive aquarium fish. So, if you're planning a tank with semi-aggressive fish, a group of swordtails might make a better choice.