2009-08-12 8 views
1

Есть ли способ в pylab для отображения оси X и Y? Я знаю, что использование grid() будет отображать их, но оно поставляется с множеством других строк, все с одинаковым акцентом.Отображение оси X и y в pylab

+1

Что вы имеете в виду? Можете ли вы привести пример кода? – Nope

+1

@Nope - «Есть ли способ в pylab для отображения оси X и Y?» что вы не понимаете в вопросе? –

ответ

3

Похоже, ваша проблема была устранена в новом Matplotlib 0.99 с функцией размещения позвоночника оси. Возьмите look at the examples.

+0

Отлично, это именно то, что мне нужно. Спасибо. – TimothyAWiseman

1

foo.grid(b=True) должен помочь, но он очень сырой.

Если поставить какой-либо из дополнительных аргументов, он автоматически принимает на себя что б Правда

Например:

foo.grid(label='My awesome grid') 
+0

Спасибо за совет. Включение сетки обеспечивает всю сетку, есть ли способ показать только оси x и y? Или, по крайней мере, подчеркнуть эти два? – TimothyAWiseman

+0

Не знаю, как подчеркнуть их. Но вы можете обесценивать сами сюжеты, и оси будут выглядеть больше. – Rince

+0

Это сработает, чтобы выделить сетку, но я ищу способ получить сетку только для значений 0. Я могу приблизиться к этому, построив x = 0 и y = 0 в том же диапазоне значений, что и моя основная функция, но в лучшем случае это кажется неэлегантным. – TimothyAWiseman

3

Какой сюжет функции вы используете?

Ось рисуется автоматически всеми функциями построения графика, которые я видел до сих пор, например.

from pylab import * 
hist(randn(10000), 100) 
show() 

Кроме того, ось может быть сгенерирован вручную с помощью .

8

Если вы хотите, чтобы имя оси вы можете с помощью функции метки:

import pylab 
pylab.xlabel("X") 
pylab.ylabel("Y") 
pylab.plot(range(10)) 
pylab.show() 

Во всяком случае, я уверен, что ось х и у генерируются автоматически.

matplotlib axes documentation

Если вы просто хотите пустой участок затем:

pylab.plot([None], [None]) 

это даст вам оси х и у с и происходит от 0 до 1. Теперь, если вы хотите изменить любой из них можно:

pylab.xlim(xmin=0, xmax=100) 
pylab.ylim(ymin=0, ymax=100) 

надежды, что помогает.

+0

Это обеспечивает ярлык на нижней и левой стороне, но я пытался сделать оси x и y с истоками. Один из способов, с помощью которого я нашел приближение, - построить функции x = 0 и y = 0, которые приближаются к тому, что я хочу. Есть ли более грациозный способ сделать это? – TimothyAWiseman

1

Самый лучший способ для меня, чтобы добавить вертикальные и горизонтальные линии в 0:

pylab.axvline(linewidth=0.5, color = 'k') 
pylab.axhline(linewidth=0.5, color = 'k') 
+0

Это ничего не добавляет, принятый ответ уже дает хорошее решение. – MTCoster

Смежные вопросы