目前,我可以使用以下代碼將數(shù)據(jù)繪制為兩條曲線。from numpy import *import mathimport matplotlib.pyplot as pltt = [1,2,4,8] raw_1 = [0.02, 0.02, 0.3, 0.4] raw_2 = [0.6, 0.7, 0.2, 0.3]plt.plot(t, raw_1, color='r', marker='o') plt.plot(t, raw_2, color='b', marker='o') plt.show()然而,我希望使x軸非線性。例如,只有 1、2、4、8 可見(jiàn),并且它們的 x 刻度間隔相同的距離。如圖所示:我對(duì) Matplotlib 不太熟悉,有人可以告訴我如何生成帶有上述 x 軸的圖嗎?我嘗試了 plt.xscale('log'),但得到了以下圖:兩個(gè)相鄰節(jié)點(diǎn)之間的距離看起來(lái)不錯(cuò),但 xticks 看起來(lái)不太好。
1 回答

米脂
TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個(gè)贊
range()為此,針對(duì)任意等距數(shù)字(使用 很方便)進(jìn)行繪圖,然后將標(biāo)簽替換為實(shí)際標(biāo)簽:
t = [1,2,4,8]
raw_1 = [0.02, 0.02, 0.3, 0.4]
raw_2 = [0.6, 0.7, 0.2, 0.3]
x = range(len(t))
plt.plot(x, raw_1, color='r', marker='o')
plt.plot(x, raw_2, color='b', marker='o')
plt.xticks(x,t)
plt.show()
添加回答
舉報(bào)
0/150
提交
取消