python - seaborn 散点图日期时间 x 轴太宽

标签 python pandas seaborn

我有这个数据框:

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)

plot

为什么 X 轴从 2000 年开始?我做错了什么吗?

最佳答案

我把这个问题作为问题发布在 Github 上,得到了这个 great response .基本上,问题是 plt.scatter 没有很好地处理日期,而 seaborn 使用它。如果 seaborn 将为 x 轴添加类型检查,它使用 plt.plot_date 作为日期值,那么这将得到修复。同时,您可以创建一个自定义版本的 sns.scatterplot 来执行此操作。

关于python - seaborn 散点图日期时间 x 轴太宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54050472/

相关文章:

python - Pandas :按多列分组后创建单一大小和求和列

python - 基于元组的子集 Pandas 数据框

python - 使用 pandas 或 seaborn 通过条形图制作回归线

python - seaborn 热图中的自定义调色板间隔

python - 如何在一个查询中两次使用反向外键关系

python - 多进程不会同时执行

python - 在Python中将值存储在本地宏中

Python:我可以将日期时间转换为粒度小于一整天的 float 吗?

python tarfile错误: struct.错误:解包需要长度为4的字符串参数

python - 分配字母数值