tiempo real matrices hacer graficos grafico graficas graficar dispersion crear coordenadas como barras python matplotlib ipython ipython-notebook

python - real - matplotlib



Cómo hacer un gráfico de IPplonlib para notebook IPython en línea (10)

Estoy tratando de usar el portátil IPython en MacOS X con Python 2.7.2 e IPython 1.1.0.

No puedo obtener gráficos de matplotlib para aparecer en línea.

import matplotlib import numpy as np import matplotlib.pyplot as plt %matplotlib inline

También probé %pylab inline y los argumentos de la línea de comando ipython --pylab=inline pero esto no hace ninguna diferencia.

x = np.linspace(0, 3*np.pi, 500) plt.plot(x, np.sin(x**2)) plt.title(''A simple chirp'') plt.show()

En lugar de gráficos en línea, obtengo esto:

<matplotlib.figure.Figure at 0x110b9c450>

Y matplotlib.get_backend() muestra que tengo el backend ''module://IPython.kernel.zmq.pylab.backend_inline'' .


En Ubuntu puede eliminar %matplotlib inline siempre que tenga plt.show() después de la creación del gráfico.



He encontrado una solución que es bastante satisfactoria. Instalé Anaconda Python y esto ahora funciona fuera de la caja para mí.


Hice la instalación de anaconda, pero matplotlib no está tramando

Comienza a trazar cuando hice esto

import matplotlib import numpy as np import matplotlib.pyplot as plt %matplotlib inline


No estoy seguro de por qué Joaquín publicó su respuesta como un comentario, pero es la respuesta correcta:

inicia ipython con ipython notebook --pylab inline

Edición: Ok, esto ahora está en desuso según el comentario a continuación. Usa el% pylab magic.


Para hacer matplotlib en línea de forma predeterminada en Jupyter (IPython 3):

  1. Edite el archivo ~/.ipython/profile_default/ipython_config.py

  2. Agregar línea c.InteractiveShellApp.matplotlib = ''inline''

Tenga en cuenta que agregar esta línea a ipython_notebook_config.py no funcionará. De lo contrario, funciona bien con Jupyter e IPython 3.1.0


Puede simular este problema con un error de sintaxis, sin embargo, %matplotlib inline no resolverá el problema.

Primero un ejemplo de la forma correcta de crear una trama. Todo funciona como se espera con las importaciones y la magia que proporciona .

df_randNumbers1 = pd.DataFrame(np.random.randint(0,100,size=(100, 6)), columns=list(''ABCDEF'')) df_randNumbers1.ix[:,["A","B"]].plot.kde()

Sin embargo, al dejar el () fuera del final del tipo de gráfico, recibe un error no ambiguo.

Código Errónico:

df_randNumbers1.ix[:,["A","B"]].plot.kde

Ejemplo de error:

<bound method FramePlotMethods.kde of <pandas.tools.plotting.FramePlotMethods object at 0x000001DDAF029588>>

Aparte de este mensaje de una línea, no hay rastro de pila u otra razón obvia para pensar que cometió un error de sintaxis. La trama no se imprime.


Si su versión matplotlib está por encima de 1.4, también es posible usar

IPython 3.xy superior

%matplotlib notebook import matplotlib.pyplot as plt

versiones anteriores

%matplotlib nbagg import matplotlib.pyplot as plt

Ambos activarán el backend nbagg , que permite la interactividad.


%matplotlib inline en %matplotlib inline en la primera celda del cuaderno y funciona. Creo que deberías intentar:

%matplotlib inline import matplotlib import numpy as np import matplotlib.pyplot as plt

También puede iniciar todos los kernels de su IPython en modo en línea de manera predeterminada configurando las siguientes opciones de configuración en sus archivos de configuración:

c.IPKernelApp.matplotlib=<CaselessStrEnum> Default: None Choices: [''auto'', ''gtk'', ''gtk3'', ''inline'', ''nbagg'', ''notebook'', ''osx'', ''qt'', ''qt4'', ''qt5'', ''tk'', ''wx''] Configure matplotlib for interactive use with the default matplotlib backend.