You can use R with the scatterplot3d library to make a 3Dplot. Input file is the Eigensoft .evec file, which contains the first 10 principle components (I named this file vcf2eigen.pca.evec).
You can see a picture of the plot here: http://rpubs.com/rbagnall/89838
Here's the code:
library(scatterplot3d)
# read in the vcf2eigen.pca.evec file
df <- read.table("vcf2eigen.pca.evec")
# give column names
names(df) <- c("SampleID", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "POPULATION")
# plot
with(df, scatterplot3d(PC1, PC2, PC3, color = as.numeric(POPULATION), pch=19, main="PCA 1000 Genomes Exome Data (3D)"))
# add legend
legend("topleft", pch=19, col=c("black", "green", "red", "blue"), legend=c("AFR", "EUR", "SAS", "EAS"))
Make sure you really need to plot all 3 components - how much variance they explain? 2D graphs are always simpler than 3D graphs.