I love seeing butterflies in my garden, one of the things many people don't consider is having host plants for the caterpillars to eat. Last year, I planted parsley ($2.50 at a local garden center) as a host plant for black swallowtail butterflies. A single plant was plenty for me to cook with and for the caterpillars to eat. I had three very large and plump caterpillars for a few weeks on my parsley and enjoyed watching them grow.
check out the link bellow to see what plants you can add to your garden to attract butterflies.