matplotlib作图显示不分时间
时间: 2023-09-08 18:13:59 浏览: 93
如果你在使用matplotlib作图时,X轴时间没有正确显示,可能是因为matplotlib默认将时间视为连续的数值,而不是时间。为了正确显示时间,你需要将X轴上的数据转换为日期格式。以下是一个简单的示例代码,可以将X轴数据转换为日期格式:
```python
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from datetime import datetime
# 构造数据
x = [datetime(2021, 1, 1), datetime(2021, 2, 1), datetime(2021, 3, 1)]
y = [1, 2, 3]
# 创建图形
fig, ax = plt.subplots()
# 绘制线条
ax.plot(x, y)
# 设置X轴格式
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d'))
ax.xaxis.set_major_locator(mdates.MonthLocator())
# 显示图形
plt.show()
```
在上面的代码中,我们首先构造了一个包含日期数据的列表x和一个对应的数值列表y。然后,我们创建了一个图形和一个坐标轴,绘制了一条连接x和y的线条。最后,我们使用`set_major_formatter`和`set_major_locator`方法将X轴格式设置为日期格式,并显示图形。
相关问题
食堂某天就餐人数数据(cateen_persons.xlsx)分析并画出一天中就餐人数的时间周期图,用pandas read_excel方法读取excel数据 用 matplotlib作图
好的,我知道了。下面是代码实现:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取excel数据
df = pd.read_excel('cateen_persons.xlsx')
# 设置时间列为索引
df.set_index('time', inplace=True)
# 绘制时间周期图
df.plot()
plt.show()
```
这段代码先使用 Pandas 的 `read_excel` 方法读取 Excel 数据,然后使用 `set_index` 方法将时间列设置为索引,最后使用 DataFrame 的 `plot` 方法绘制时间周期图,并使用 Matplotlib 的 `show` 方法显示图像。
食堂某天就餐人数数据(cateen_persons.xlsx)分析并画出一天中就餐人数的时间周期图,用pandas read_excel方法读取excel数据 用 matplotlib作图,画出表格线
好的,下面是代码实现:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取excel数据
df = pd.read_excel('cateen_persons.xlsx')
# 设置时间列为索引
df.set_index('time', inplace=True)
# 绘制时间周期图,并设置表格线
ax = df.plot(grid=True)
# 显示图例
ax.legend()
# 显示图像
plt.show()
```
这段代码基本与之前的代码相同,只是在绘制图时添加了 `grid=True` 参数,用于显示表格线。此外,还添加了 `ax.legend()` 方法,显示图例。
阅读全文