Python之Matplotlib 解决绘图 X 轴值不按数组排序问题. 您所在的位置:网站首页 matplotpyplot浮点数绘图 Python之Matplotlib 解决绘图 X 轴值不按数组排序问题.

Python之Matplotlib 解决绘图 X 轴值不按数组排序问题.

2024-07-08 17:36| 来源: 网络整理| 查看: 265

在用Matplotlib库绘制折线图的时候遇到一个问题,当定义一个x轴数组时,plot绘制折线图时,x轴并不会按照我们定义的数组的顺序去排列显示,例如:

import matplotlib.pyplot as plt colums_x = ['aa','bc','ad','bd'] colums_y = [12,14,10,15] plt.plot(colums_x,colums_y) plt.show()

我期望的是 X 轴能够按照: aa ,bc ,ad ,bd ,从左到右显示,但plt.show()的实际效果是:

这里写图片描述

会出现这种原因,按照我的理解(纯属臆想,不对请指教,谢谢),应该 Matplotlib 根据ASCLL码值或者其它值,定义了一个 X 轴的取值范围,再从数组中的值对应取值范围中的某个位置,跟 Y 轴差不多。但这不是我期望的效果。翻了一晚上的资料,幸运的是,最后让我找到了解决的方法,代码应该这样写:

from pylab import * import matplotlib.pyplot as plt colums_x = ['aa','bc','ad','bd'] colums_y = [12,14,10,15] # 自定义 x轴 的取值: plt.xticks(arange(len(colums_x)),colums_x) # 不要再写进 colums_x 了 plt.plot(colums_y) plt.show()

得到的效果图是: 这里写图片描述

这是第一次、第一篇博客,分享我遇到的简单的问题,如若写得有问题,麻烦请赐教,本人还是菜鸟,希望能和大家一起讨论、学习。关于上面我遇到的这个问题,我只摸索出了解决方法,但是原理还不理解,如果有大大知道,麻烦请告诉我,谢谢.



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有