title: Plotting a ROC curve in scikit yields only 3 points
body: <p><strong>TLDR: scikit's <code>roc_curve</code> function is only returning 3 points for a certain dataset. 
  Why could this be, and how do we control how many points to get back?</strong></p>
  
  <p>I'm trying to draw a ROC curve, but consistently get a "ROC triangle". </p>
  
  <pre><code>lr = LogisticRegression(multi_class = 'multinomial', solver = 'newton-cg')
  y = data['target'].values
  X = data[['feature']].values
  
  model = lr.fit(X,y)
  
  # get probabilities for clf
  probas_ = model.predict_log_proba(X)
  </code></pre>
  
  <p>Just to make sure the lengths are ok: </p>
  
  <pre><code>print len(y)
  print len(probas_[:, 1])
  </code></pre>
  
  <p>Returns 13759 on both. </p>
  
  <p>Then running: </p>
  
  <pre><code>false_pos_rate, true_pos_rate, thresholds = roc_curve(y, probas_[:, 1])
  print false_pos_rate
  </code></pre>
  
  <p>returns [ 0.          0.28240129  1.        ]</p>
  
  <p>If I call threasholds, I get array([ 0.4822225 , -0.5177775 , -0.84595197]) (always only 3 points). </p>
  
  <p>It is therefore no surprise that my ROC curve looks like a triangle. </p>
  
  <p>What I cannot understand is <strong>why scikit's <code>roc_curve</code> is only returning 3 points.</strong> Help hugely appreciated.  </p>
  
  <p><img src="https://i.stack.imgur.com/EpVkI.png" alt="enter image description here">  </p>