我有这个数据框:
pd.DataFrame({'Depth': {0: 0.2,1: 0.4,2: 0.4,3: 0.4,4: 0.4,5: 0.4,6: 0.6000000000000001,7: 0.4,8: 3.2,9: 2.0},'DateTimeUTC': {0: Timestamp('2018-03-28 06:25:08'),1: Timestamp('2018-03-28 06:25:49'),2: Timestamp('2018-03-28 06:27:06'),3: Timestamp('2018-03-28 06:32:11'),4: Timestamp('2018-03-28 06:32:59'),5: Timestamp('2018-03-28 06:34:02'),6: Timestamp('2018-03-28 06:35:38'),7: Timestamp('2018-03-28 06:37:04'),8: Timestamp('2018-03-28 06:39:08'),9: Timestamp('2018-03-28 06:40:52')}})
看起来像这样:
<table>
<tr><th></th><th>Depth</th><th>DateTimeUTC</th></tr>
<tr><th>0</th><td>0.2</td><td>2018-03-28 06:25:08</td></tr>
<tr><th>1</th><td>0.4</td><td>2018-03-28 06:25:49</td></tr>
<tr><th>2</th><td>0.4</td><td>2018-03-28 06:27:06</td></tr>
<tr><th>3</th><td>0.4</td><td>2018-03-28 06:32:11</td></tr>
<tr><th>4</th><td>0.4</td><td>2018-03-28 06:32:59</td></tr>
<tr><th>5</th><td>0.4</td><td>2018-03-28 06:34:02</td></tr>
<tr><th>6</th><td>0.6</td><td>2018-03-28 06:35:38</td></tr>
<tr><th>7</th><td>0.4</td><td>2018-03-28 06:37:04</td></tr>
<tr><th>8</th><td>3.2</td><td>2018-03-28 06:39:08</td></tr>
<tr><th>9</th><td>2.0</td><td>2018-03-28 06:40:52</td></tr>
</table>
请注意,所有DateTimeUTC都在2018年之内.当我尝试使用sns.scatterplot绘制深度与时间的关系时,我得到:
sns.scatterplot('DateTimeUTC','Depth',data=df)
为什么X轴从2000年开始?难道我做错了什么?
最佳答案
我在Github上将问题发布为问题,并得到了great response.基本上,问题是plt.scatter无法很好地处理日期,而seaborn使用了它.如果seaborn将为x轴添加类型检查,该检查将使用plt.plot_date作为日期值,则此问题将得到解决.同时,可以创建一个自定义版本的sns.scatterplot来完成此任务.