【发布时间】:2019-02-20 09:42:10
【问题描述】:
我正在绘制 matplotlib 图,我的 x 轴由 YYYYMM 格式的年份和月份字符串组成,例如 2019 年 1 月的 201901。
我的问题是一些数据跨越了很长一段时间,这使得 x 轴刻度标签如此密集,以至于它们相互堆积,变得不可读。
我尝试缩小字体并将标签旋转 90 度,这很有帮助,但对于我的某些数据来说仍然不够。
这是我的 x 轴之一的示例,看起来不错:
这里是一个 x 轴的例子,因为数据跨越了很长一段时间:
所以我希望 matplotlib 在刻度标签开始相互堆积时跳过打印一些刻度标签。例如,打印一月的标签,跳过打印二月,三月,四月和五月的标签,打印六月的标签,跳过打印七月,八月的标签等。但我不知道该怎么做?
或者我可以使用任何其他类型的解决方案来解决这个问题吗?
【问题讨论】:
-
绘制
datetime对象而不是字符串。然后整个问题就消失了。 -
字符串被视为等间距的“类别”。如果您将“boo”放在那里,它将被视为与您的其他字符串相同。正如@ImportanceOfBeingErnest 所说,最好将其转换为日期时间,以便将 x 值视为数字。
-
感谢您的反馈 ImportanceOfBeingErnest,Jody。
标签: python matplotlib