簡體   English   中英

僅顯示x軸圖的第一個和最后一個刻度標簽

[英]Show only first and last ticks label of x-axis plot

我正在解析日志文件並創建圖。

我不需要X軸上的所有標簽。 我只想顯示第一個,最后一個或幾個,並按特定步驟顯示,例如每100個。

我該怎么做? 我只能顯示第一個或最后一個,但不能一起顯示。

我的代碼:

import numpy as np
import pylab as pl
import matplotlib.pyplot as plt

with open('file.log') as f:
    lines = f.readlines()
    x = [int(line.split(',')[0]) for line in lines]
    my_xticks = [line.split(',')[1] for line in lines]
    y = [int(line.split(',')[2]) for line in lines]
    z = [int(line.split(',')[3]) for line in lines]

plt.xticks(x, my_xticks[0], visible=True, rotation="horizontal")
plt.xticks(x, my_xticks[-1], visible=True, rotation="horizontal")

plt.plot (x,z)
plt.plot (x,z)
plt.plot(x, y)


plt.show()

謝謝!

帶有X-ticks,您可以提供一個列表。 因此,您可以執行以下操作:

plt.xticks([my_xticks[0], my_xticks[-1]], visible=True, rotation="horizontal")

順便說一句,您可以使用以下方法獲得原始刻度:

my_xticks = ax.get_xticks()

其中, ax是您的Axes實例。 您甚至可以提供自己的值:

plt.xticks(
          [my_xticks[0], my_xticks[-1]], 
          ['{:.2}'.format(my_xticks[0]), '{:.2}'.format(my_xticks[-1])]
           visible=True, rotation="horizontal")

等等。您可以看到將其概括的難易程度...

只要記住刻度線標簽是指圖中的特定Axes 因此,理想情況下,您應該這樣做:

`ax.set_xticks(..)`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM