6

pyplot/matplotlib を使用して、Python で折れ線グラフを作成しました。

import matplotlib.pyplot as plt
import math
import numpy as np

alphabet = range(0, 25)
firstLine = [letter + 65 for letter in alphabet]
secondLine = [letter + 97 for letter in alphabet]

plt.plot(alphabet, firstLine, '-b', label='ASCII value of capital.')
plt.plot(alphabet, secondLine, '--g', label='ASCII value of lowercase.')
plt.xlabel('Letter in Alphabet')
plt.ylabel('ASCII Value')
plt.title('ASCII value vs. Letter')
plt.legend()
plt.show()

私のx軸では、現在は数値でスケーリングされています。ただし、x 軸の増分を 0、5、10 ではなく、文字 (a、b、c、d) でラベル付けする必要があります。具体的には、文字「a」を 0、「 b' は 1 などにマップします。

pyplotにそれをさせるにはどうすればよいですか?

4

2 に答える 2

11

機能を使用してくださいxticks。その場合pyplot.xticks([0, 1, 2, 3], ['a', 'b', 'c', 'd'])、0、1、2、および 3 に軸マークがあり、a、b、c、および d というラベルが付けられます。np.arangeを使用して、必要な数値の範囲をすばやく作成することもできます。

于 2012-09-26T05:42:50.043 に答える
6

以下を使用しましplt.xticks(range(26), [chr(97 + x) for x in xrange(26)])た。

注:alphabet = range(0, 25) to を変更する必要があります。alphabet = range(26)そうしないと、'z' を見逃すことになります。

ここに画像の説明を入力

于 2012-09-26T05:47:34.053 に答える