Only display posts with a specific tag

Take a look at the tag parameters of the WP_Query class.

You’ll most likely need to create three separate queries.

<?php
$query = new WP_Query( array(
    'posts_per_page' => -1,
    'no_found_rows'  => true,
    'tag'            => 'tag1'
) );

if ( $query->have_posts() ) :

    while ( $query->have_posts() ) : $query->the_post();

        // the_title();

    endwhile; wp_reset_postdata();

endif; ?>