Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Matplotlib scatter plot with unknown error

I am attempting to create a scatter plot. I have a list of numbers from 0 - 17 as well as an array with 18 values. I can plot the data as a line plot but when I try to plot as a scatter I get an error message I do not understand: TypeError: ufunc 'sqrt' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe''

What does this error message mean and how can I get the data to plot as a scatter?

import numpy as np import matplotlib.pyplot as plt  y = [7316.0, 7453.25, 7518.25, 7711.5, 7448.0, 7210.25, 7416.75, 6960.75,       7397.75, 6397.5, 5522.75, 5139.0, 5034.75, 4264.75, 5106.0, 3489.5,       4712.0, 4770.0] x = np.arange(0,18,1)  plt.rcParams['legend.loc'] = 'best' plt.figure(1) plt.xlim(0, 20) plt.ylim(0, 10000) plt.scatter(x, y, 'r') plt.show() 
like image 565
Bogdan Janiszewski Avatar asked Mar 01 '16 20:03

Bogdan Janiszewski


1 Answers

Check the scatter documentation. Third argument is for size of points and should be scalar or array_like. I assume 'r' is for color so do the following:

plt.scatter(x, y, c='r') 
like image 99
gsmafra Avatar answered Sep 18 '22 01:09

gsmafra