When I use SHAP for classification problem, it shows an output that is not 0 or 1. How can I overcome this?
The default link function is the identity, so you are seeing log-odds rather than probabilities. To see the probability, try adding link='logit' to your call of force_plot like so:

shap.force_plot(explainer.expected_value,
                shap_values[0,:].reshape(1, 8),
                X_train[0,:].reshape(1, 8),
                link='logit')


You can read more at the SHAP documentation site.