Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7时间序列非数值_Python_Python 2.7_Matplotlib_Time Series - Fatal编程技术网

Python 2.7时间序列非数值

Python 2.7时间序列非数值,python,python-2.7,matplotlib,time-series,Python,Python 2.7,Matplotlib,Time Series,我正在使用Python2.7,需要使用matplotlib库绘制时间序列。我的y轴数据是数字数据,一切正常 问题是我的x轴数据不是数字,在这种情况下matplotlib不配合。它不会给我画一个时间序列,即使它不会影响绘图的正确性,因为x轴数据无论如何都是按给定顺序排列的,它的顺序在逻辑上不会影响任何东西 例如,假设x数据是[“i”、“like”、“python”],而y轴数据是[1,2,3] 我没有添加代码,因为我发现代码没有问题,如果我将数据更改为所有数字数据,代码就可以工作 请解释我如何使用

我正在使用Python2.7,需要使用matplotlib库绘制时间序列。我的
y
轴数据是数字数据,一切正常

问题是我的
x
轴数据不是数字,在这种情况下matplotlib不配合。它不会给我画一个时间序列,即使它不会影响绘图的正确性,因为
x
轴数据无论如何都是按给定顺序排列的,它的顺序在逻辑上不会影响任何东西

例如,假设
x
数据是
[“i”、“like”、“python”]
,而
y
轴数据是
[1,2,3]

我没有添加代码,因为我发现代码没有问题,如果我将数据更改为所有数字数据,代码就可以工作

请解释我如何使用matplotlib绘制时间序列,而不必将
x
值转换为数值


我的matplotlib代码基于以下答案:,。

matplotlib需要某种方式来定位这些标签。请参见以下示例:

import matplotlib.pyplot as plt

x = ["i","like","python"] 
y = [1,2,3]

plt.plot(y,y)  # y,y because both are numeric (you could create an xt = [1,2,3]
plt.xticks(y,x) # same here, the second argument are the labels.
plt.show()
,这导致:

注意,我是如何把标签放在那里的,但却不得不说它们应该放在哪里


我还认为您应该在代码中加入一部分,以便其他人更容易提出建议。

Matplotlib需要某种方式来定位这些标签。请参见以下示例:

import matplotlib.pyplot as plt

x = ["i","like","python"] 
y = [1,2,3]

plt.plot(y,y)  # y,y because both are numeric (you could create an xt = [1,2,3]
plt.xticks(y,x) # same here, the second argument are the labels.
plt.show()
,这导致:

注意,我是如何把标签放在那里的,但却不得不说它们应该放在哪里


我还认为您应该在代码中加入一部分,以便其他人更容易提出建议。

当您编写plt.plot(y,y)时,您这样做是因为y是1,2,3?在任何其他情况下你都不会使用它?我这样做是为了方便。您可以使用xt=[1,2,3],但是y已经存在了。你只需要一种方法来说明这些标签应该在哪里。当你写plt.plot(y,y)时,你这么做是因为y是1,2,3?在任何其他情况下你都不会使用它?我这样做是为了方便。您可以使用xt=[1,2,3],但是y已经存在了。你只需要一种方式来说明这些标签需要放在哪里。