Строка графика оценивает в matplotlib

Я использую matplotlib для приложения построения графика. Я пытаюсь создать график, который имеет строки как X значений. Однако использование plot функция ожидает числовое значение для X.

Как я могу использовать строку X значений?

9
задан Chris 23 January 2012 в 12:33
поделиться

2 ответа

Почему бы просто не сделать значение x некоторым автоматически увеличивающимся числом, а затем изменить метку?

- jed

3
ответ дан 4 December 2019 в 08:51
поделиться

Вот один способ, который, как я знаю, работает, хотя я думаю, что создание пользовательских символов - более естественный способ достижения этой цели.

from matplotlib import pyplot as PLT

# make up some data for this example
t = range(8)
s = 7 * t + 5
# make up some data labels which we want to appear in place of the symbols
x = 8 * "dp".split()
y = map(str, range(8))
data_labels = [ i+j for i, j in zip(x, y)]
fig = PLT.figure()
ax1 = fig.add_subplot(111)
ax1.plot(t, s, "o", mfc="#FFFFFF")     # set the symbol color so they are invisible
for a, b, c in zip(t, s, data_labels) :
    ax1.text(a, b, c, color="green")

PLT.show()

Так что это помещает "dp1", "dp2", ... вместо каждого из исходных символов данных - по сути, создавая пользовательские "текстовые символы", хотя, опять же, я должен верить, что есть более прямой способ сделать это в matplotlib (без использования Artists).

1
ответ дан 4 December 2019 в 08:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: