我在matplotlib.pyplot上遇到了一个难题,这让人费解
在我正在参加的DataCamp课程中,答案的解决方案是以下代码:
# Scatterplot with color relating to time
prices.plot.scatter('EBAY', 'YHOO', c=prices.index,
cmap=plt.cm.viridis, colorbar=False)
plt.show()
以及数据帧(这是来自Kaggle的纽约证券交易所数据集):
EBAY YHOO
date
2010-01-04 23.900000 17.100000
2010-01-05 23.650000 17.230000
2010-01-06 23.500000 17.170000
2010-01-07 23.229998 16.700001
2010-01-08 23.509999 16.700001
现在在DataCamp解决方案中,它可以工作并生成一个绘图,但是当我尝试使用PyCharm自己复制它时,我得到以下错误消息:
ValueError: 'c' argument must be a color, a sequence of colors, or a sequence of numbers, not Index(['2010-01-04', '2010-01-05', ...
你知道为什么它不起作用吗
下面是由DataCamp中的代码生成的图:
我认为错误信息可能更清楚
但是,从索引的显示方式来看,问题是显而易见的:您有一个
object
或str
索引而不是DatetimeIndex如果您在呼叫
.scatter()
之前执行此操作,您将回到正轨:相关问题 更多 >
编程相关推荐