Regularmente hago figuras (el tipo de análisis exploratorio de datos) en R. También programo en Python y me preguntaba si hay características o conceptos en matplotlib que valdría la pena aprender. Por ejemplo, estoy bastante contento con R - pero su función image() producirá archivos grandes con salida pixelada, mientras que la figura equivalente de Matlab (también programo regularmente en Matlab) parece ser manejable en tamaño de archivo y también 'suavizada' - no matplotlib también proporciona tales reducciones ...? Pero, en términos más generales, me pregunto qué otras ventajas podría conferir matplotlib. No me refiero a que sea una pregunta trolling. Gracias.matplotlib para usuario R?
Respuesta
Esta es una respuesta difícil.
Recientemente cambié parte de mi carga de trabajo de gráficos de R a matplotlib. En mi humilde opinión, encuentro que los gráficos de matplotlib son más bonitos (mejores colores predeterminados, se ven más nítidos y más modernos). También creo que matplotlib representa PNG mucho mejor.
Sin embargo, la verdadera motivación para mí fue que quería trabajar con mis datos subyacentes en Python (y numpy) y no en R. Creo que esta es la gran pregunta, en qué idioma quieres cargar, analizar y manipular sus datos?
Por otro lado, una ventaja para R es que los valores predeterminados de trazado funcionan (hay una función para todo). Me encuentro a menudo cavando a través de los documentos matplotlib (son gruesos) buscando alguna manera oscura para ajustar un borde o aumentar el grosor de una línea. Las rutinas de trazado de R tienen cierta madurez detrás de ellas.
Gracias por tus pensamientos ... También tramo en Matlab, así que pensé que podría ser una transición fácil, pero puedo crear la mayoría de los gráficos que puedo imaginar en R (especialmente con gráficos de cuadrícula), así que supongo que esperaré matplotlib - Olvidé que hay detalles en la personalización para aprender en cada paquete y que sería un sumidero de tiempo no deseado en este momento ... – hatmatrix
Creo que la mayor ventaja es que matplotlib se basa en Python, que dices que ya sabes. Entonces, este es un idioma menos para aprender. Simplemente dedique el tiempo a dominar Python, y se beneficiará directamente de la tarea de trazado e indirectamente de sus otras necesidades de Python.
Además, IMHO Python es un lenguaje en general más rico que R, con muchas más bibliotecas que pueden ayudar en diversas tareas. Tienes que acceder a los datos para trazar, y los datos vienen en muchas formas. En cualquier forma que venga, estoy seguro de que Python tiene una biblioteca eficiente para ello.
¿Y qué hay de incluir esos gráficos en programas más completos, digamos simples GUI? matplotlib se une fácilmente con las librerías GUI de Python (como PyQT) y puedes hacer cosas que solo tu imaginación limita.
Gracias por tu opinión - a pesar de que Python es más rico que R, estoy más cómodo con R en muchos aspectos : su lista integrada también puede ser un diccionario ordenado, creación rápida de entornos temporales (espacios de nombres) para el cálculo local, poderosas funciones anónimas ... La creación de la GUI es un '+' para Python - Lo uso con tramas generadas por Matlab + PIL a veces, pero también hago GUI simples en R para análisis interactivo. – hatmatrix
Puede intentar llamar a R desde Python. Podría usar RPy, pero lo que suelo hacer es escribir código R en un archivo y luego ejecutar R como un proceso en modo batch, guardando los resultados en el disco y luego recogiéndolo desde Python. Funciona genial. – telliott99
- 1. matplotlib analógico de pares de R '
- 2. Interfaz gráfica de usuario para el script R
- 3. imshow para 3D? (Python/Matplotlib)
- 4. Matplotlib texto dimensiones
- 5. Obteniendo el backend GTK Agg de Matplotlib para respetar el tema de usuario
- 6. ¿Cómo puedo crear una interfaz para matplotlib?
- 7. ejes no lineales para imshow en matplotlib
- 8. ¿Existe un matplotlib fluido para ReportLab?
- 9. Matplotlib para Python 3 y Linux
- 10. ¿Valores de color en imshow para matplotlib?
- 11. Compilar Matplotlib para Python en Snow Leopard
- 12. Matplotlib imshow() estirar para "ajustar el ancho"
- 13. matplotlib - aumentar la resolución para ver detalles
- 14. ¿Acelera Matplotlib?
- 15. autoescala Matplotlib
- 16. R enlaces para Mapnik?
- 17. R Paquetes para Limnology
- 18. R .Internal para principiantes
- 19. REvolution para R
- 20. Modo Emacs para R?
- 21. ¿Cómo se permiten múltiples entradas del usuario que usa R?
- 22. Histograma Matplotlib
- 23. Fórmulas en funciones definidas por el usuario en R
- 24. cómo declarar una distribución definida por el usuario en R
- 25. Buscar el nombre de usuario de Windows dentro de R
- 26. Matplotlib, fuente consistente utilizando látex
- 27. Trazado de campos vectoriales en pitón (matplotlib)
- 28. Regex para despojar \ r \ n o \ r \ n
- 29. Paquetes de optimización para R
- 30. Doble para bucles en R
eche un vistazo a esta pregunta similar: http://stackoverflow.com/questions/1177019/what-can-be-done-in-r-that-cant-be-done-with-python-numpy-scipy – dalloliogm
Me doy cuenta de que esta es una vieja pregunta, pero para los visitantes nuevos: simplemente use [ggplot2] (http://ggplot2.org/). Tiene una curva de aprendizaje pronunciada, pero [grandes documentos] (http://docs.ggplot2.org/current/), y produce mejores gráficos que matplotlib por defecto. – naught101