我有这个数据集,当我尝试调用它的值时,它会输出奇怪的错误。不确定我哪里出错了。 其中 data1 是字典,它输出以下错误:
~\anaconda3\lib\site-packages\matplotlib\axes\_base.py in _plot_args(self, tup, kwargs)
310 def _plot_args(self, tup, kwargs):
311 if len(tup) > 1 and isinstance(tup[-1], str):
--> 312 linestyle, marker, color = _process_plot_format(tup[-1])
313 tup = tup[:-1]
314 elif len(tup) == 3:
~\anaconda3\lib\site-packages\matplotlib\axes\_base.py in _process_plot_format(fmt)
102 i += 2
103 else:
--> 104 raise ValueError(
105 'Unrecognized character %c in format string' % c)
106
ValueError: Unrecognized character a in format string
我已经提取了字典和两个值集的类型。字典是一个字典,两者的值集都是列表。
但是,当我按照以下方式绘制它时,它起作用了:
plt.figure()
x= data1['date']
y = data1['value']
plt.plot(x,y)
可能出了什么问题?
from matplotlib import pyplot as plt
d = { "name" : ["Joe", "Maria", "Anna", "Bob"], "gender" : ["Male", "Female", "Female", "Male"], "salary" :[10000,20000,24000,14000]}
plt.plot("name", "salary", data=d)
plt.show()
您必须传入参数对象,以便它能够理解您想要来自该对象的标签。在您的情况下,它将
"date", "value"
视为可迭代,因为 string
是 iterable
并且它尝试设置刻度“d”,“a”,“t”,“e”。
您应该传递变量:
plt.plot(date,value,data1)