簡體   English   中英

Matplotlib xtick ytick

[英]Matplotlib xtick ytick

from matplotlib.lines import Line2D
import numpy as np

fig = plt.figure(figsize=(6,6))

plt.plot([1, 2, 4, 8, 12, 16, 20, 24], color='black', marker=None)

labels = ['1', '2', '4', '8', '12', '16', '20', '24']
xticks = [1,2,3,4,5,6,7,8]
nthreads = [1,2,4,8,12,16,20,24]

plt.xticks(xticks, labels)
plt.yticks(nthreads, labels)

plt.show()

我正在嘗試生成f(x)= x的圖,但是我無法擺脫直線的彎曲。 x軸刻度標簽也有右移。

如何通過點(1,1),(2,2),...,(24、24)形成一條直線並固定x軸標簽移動?

上面的代碼生成的圖

我分別嘗試了plt.xticks()plt.yticks()nthreadsxticks所有其他排列,但結果都不像我想要的那樣。

當您在不設置x數組的情況下繪制matplotlib時,請使用[0,1,2,3,4,5,6,7]類的默認列表。 因此,您不會得到一條直線。 您必須同時指定xy數組。 在您的情況下,它們必須相同。

如果要放置標簽,請使用本示例中的位置和標簽。 要移動坐標系,請設置當前軸的xlimylimplt.gca() )。

from matplotlib.lines import Line2D
import matplotlib.pyplot as plt
import numpy as np
# plot y=x
fig = plt.figure(figsize=(6,6))
x = [1, 2, 4, 8, 12, 16, 20, 24]
plt.plot(x,x, color='black', marker=None)
# put labels for all ticks
labels = np.arange(1,25,1)
plt.xticks(labels, labels)
plt.yticks(labels, labels)
# set limits of axis
ax = plt.gca()
ax.set_xlim([1,24])
ax.set_ylim([1,24])

plt.show()

在此處輸入圖片說明

暫無
暫無

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

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