When using price sets, at least with radio, it adds an automatic - none - option. Why is that and how can I remove or hide it?
You can hide the -none- option by customizing the template with a simple jQuery snippet. However you should add a function to give the user a mechanism to clear the selections as mentioned above. Similar to if you use a yes/no field in a profile and it is not required Civi will insert a 'clear' option link.