如何使用python matplotlib标记x轴

2024-05-17 02:55:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图从我的csv数据文件制作一个图表。我的代码如下:

for name in per_data.dtype.names[2:]:
    plt.plot(per_data['RELEASE'],per_data[name],label=name)
    plt.legend(loc='upper left',prop = {'size':7},bbox_to_anchor=(1,1))
    plt.tight_layout(pad=5)
    plt.xlabel ('Release')
    plt.ylabel ('Time/Sec')
    plt.title ('Ingest Performance Test')
    plt.grid()
    plt.show() 

enter image description here

我的csv数据是:

DATE    RELEASE 10GB    100GB   200GB   400GB   600GB   800GB   1000GB
5/5/16  2.67    0.36    4.18    8.54    18      27      38      46
5/5/16  2.68    0.5     4.24    9.24    18      27      37      46
5/6/16  2.69    0.32    4.3     9.18    19      29      37      46
5/6/16  2.7     0.35    4.3     9.3     19      28      37      46
5/6/16  2.71    0.3     4.18    8.18    16      24      33      41

如您所见,我使用第二列——RELEASE作为x轴标签。问题是:实际发布的版本号是:2.67、2.68、2.69、2.70、2.71 但是,程序在图中添加了额外的点(2.65、2.75、2.85、2.95和2.705)。如何设置,以便x轴的标签将反映我的版本号?


Tags: csv代码nameinfordatarelease数据文件
1条回答
网友
1楼 · 发布于 2024-05-17 02:55:06

您需要使用plt.xticks(),如图所示here。它控制x轴使用的刻度和标签。

在您的示例中,必须添加另一行,如下所示:

for name in per_data.dtype.names[2:]:
    plt.plot(per_data['RELEASE'],per_data[name],label=name)
    plt.legend(loc='upper left',prop = {'size':7},bbox_to_anchor=(1,1))
    plt.tight_layout(pad=5)
    plt.xlabel ('Release')
    plt.xticks (per_data['RELEASE'])
    plt.ylabel ('Time/Sec')
    plt.title ('Ingest Performance Test')
    plt.grid()
    plt.show() 

相关问题 更多 >