Matplotlib散点图在图形中间聚集

时间:2019-09-02 01:36:48

标签: matplotlib python-3.7

我正试图绘制一些温度数据。我正在设置散点图,类似于对线图进行的操作,但是散点图将所有数据聚集在图形的垂直中心。不知道我在做什么错。

我尝试将简单数据绘制成可以正常工作的方式,当我尝试使用我的数据时,这些图会聚在一起。

这是我的代码

import csv
import matplotlib.pyplot as plt
import pandas as pd
from datetime import datetime
import matplotlib
#matplotlib.use('Agg')
from matplotlib import dates as mdates

path="./temps.csv"
file = open(path,newline='')
reader = csv.reader(file)
header = next(reader)
dates = []
temps  = []
fl_dates=[]
for row in reader:
    date = datetime.strptime(row[0],'%m/%d/%Y %H:%M:%S')
    dates.append(date)
    temps.append(float(row[1]))
numrows=len(dates)
plt.figure(figsize=(10,10))
ax = plt.axes()
ax.xaxis.set_major_formatter(mdates.DateFormatter("%m/%d/%Y %H:%M:%S"))
fl_dates.append(dates[0])
fl_dates.append(dates[numrows-1])
ax.set_xticks(fl_dates)
plt.title("Temperatures Over Time")
plt.scatter(dates,temps)
plt.ylabel('Temperatues')
plt.xlabel('Date/Time')
plt.xticks(rotation='45')
plt.tight_layout();
plt.savefig('temps.png')
plt.show()

Result of Scatter Plot

这是一些从“ ./temps.csv”中读取的示例数据

08/30/2019 12:03:33,31.000000
08/30/2019 12:03:43,34.000000
08/30/2019 12:03:54,33.000000
08/30/2019 12:04:04,32.000000
08/30/2019 12:04:15,31.000000
08/30/2019 12:04:25,30.000000
08/30/2019 12:04:36,31.000000
08/30/2019 12:04:46,32.000000
08/30/2019 12:04:57,35.000000
08/30/2019 12:05:07,36.000000
08/30/2019 12:05:18,37.000000
08/30/2019 12:05:28,30.000000
08/30/2019 12:05:39,31.000000
08/30/2019 12:05:50,33.000000
08/30/2019 12:06:00,32.000000
08/30/2019 12:06:11,31.000000
08/30/2019 12:06:21,32.000000
08/30/2019 12:06:32,35.000000
08/30/2019 12:06:42,31.000000

绘制的内容:

scatter plot with data bunched up in middle

0 个答案:

没有答案