Я пытаюсь отобразить результаты запроса SQL на графике, используя Matplotlib, но продолжаю получать ту же ошибку:
TypeError: unhashable type: 'numpy.ndarray'
Я пробовал жесткое кодирование в случайных значениях, которые работали нормально, поэтому яполагаю, что это связано с форматом результатов SQL.Результат запроса SQL добавляется к переменной x_list = [] и возвращает список в формате:
[(u'Ford',), (u'Vauxhall',), (u'Volvo',)]
Затем я попытался преобразовать x_list в массив numpy с помощью приведенного ниже кода и преобразовать его вследующее, которое все еще генерировало ту же ошибку:
x_list = np.array(x_list)
print xlist
output:
[[u'Ford']
[u'Vauxhall']
[u'Volvo']
Кто-нибудь знает, что мне нужно сделать, чтобы отобразить эти результаты SQL на графике, не получая эту ошибку?
РЕДАКТИРОВАТЬ:
Добавлено, как я строю график для получения дополнительной информации.Я использую tkinter для отображения графика в своей программе, пытаясь воспроизвести его как можно лучше, без лишних беспорядков.
def plot():
conn = sqlite3.cursor('Cars.db')
c = conn.cursor()
c.execute('SELECT model from Cars')
rs = c.fetchall()
x_list = []
x_list.append(rs)
x_list = np.array(x_list)
a.plot(x_list)
canvas.draw()
f = Figure(figsize=(10,5), dpi=100)
canvas = FigureCanvasTkAgg(f, win)
canvas.draw()
canvas.get_tk_widget().grid()