Loading

Alison's New App is now available on iOS and Android! Download Now

Study Reminders
Support
Text Version

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

Trazado geográfico con Basemap

00:01 Speaker 1: Hola, todo el mundo, y bienvenido a la segunda parte de la Sección V: Todo sobre la visualización de datos con Matplotlib en Python. En esta sección, de lo que vamos a hablar es Basemap y en realidad, conseguir Basemap. Para conseguir Basemap, lo primero que vamos a hacer wanna es ir a matplotlib.org/basemap.

00:20 S1: Ahora, una vez que estamos allí, lo que queremos hacer es descargar Basemap, ' porque no tendrás Basemap de forma predeterminada. Por lo tanto, vamos a ir a "Descargar aquí" y debe llevarnos a este sitio web aquí, SourceForge. Y desde aquí, podemos encontrar las versiones de Basemap, y luego lo que realmente queremos. Ya he comenzado mi descarga pero lo que harías es que podrías bajar a Basemap 1.0.7. Siga adelante y haga clic en eso. Y luego de ahí, vemos que hay algunos Instaladores de Windows pero el problema es que no tenemos un instalador para Python 3.4. Por lo tanto, estamos usando 3.4.

00:56 S1: Por lo tanto, lo que vamos a hacer es usar este derecho aquí. Sólo tendremos este "tar.gz". Siga adelante y haga clic en eso y descargue eso. Voy a seguir adelante y pausarlo mientras el mío está descargando y luego una vez que se haga, saldremos adelante y recogeremos de nuevo. Con el fin de extraer este archivo, usted va a necesitar un programa llamado, 7-Zip. Eso es siete-dash-zip, que puedes encontrar aquí. Ahora, si estás en posiblemente Mac, podrías ser capaz de hacerlo y luego obviamente en Linux, puedes descomprimir tarballs, sin problema. Pero si estás en Windows, te wanna programa como 7-Zip. Por lo tanto, 7-Zip es el único que conozco que incluso puede hacerlo en Windows. Pero si estás en Mac o Linux, también puedes hacerlo si sabías descomprimir tarbolas y cosas. De lo contrario, basta con ver 7-zip. Anyways, I'll pause it now and then when the download is complete, we'll pick it back up.

01:50 S1: De acuerdo. Una vez que se hace la descarga, lo que harás es que irás a donde sea que se descargó. Aquí es donde está el mío. Puedes hacer clic con el botón derecho del ratón y lo extraeremos con 7-Zip. Solo diremos, "Extracto aquí". Y de nuevo, si estás en Mac OS o Linux, utilizarías el "tar -zxvf", y luego el archivo a extraer. Una vez que hayas extraído, deberías tener esta carpeta "dist" para la distribución y ahí, tienes otro tar. Así que de nuevo, haremos exactamente lo mismo con 7-zip y vamos a extraer aquí. Eso está bien. Y luego, haciendo clic ahí, vemos que tenemos todos estos archivos junto con un, "setup.py ".

02:30 S1: Ahora, lo más fácil de hacer desde aquí es utilizar este archivo "setup.py". Vamos adelante y volvemos a un directorio y al menos en Windows, podemos mantener Shift y hacer clic con el botón derecho en ese directorio y abrir una ventana de comandos allí. Ahora, básicamente estamos dentro de este directorio de Basemap y luego, podemos decir específicamente, "C: /python34/pythonsetup.pyinstall". Esto intentará instalar Basemap en nuestro Matplotlib.

03:04 S1: Lo que haríamos en este punto es que se nos da un área por lo menos aquí y podemos hacer "C: /python34/python" y eso va a funcionar básicamente Python para nosotros. Y entonces, nuestra pregunta sería algo así: De "mpl_toolkits.BasemapimportBasemap". Mientras usted pueda hacer eso, usted debe tener Basemap bastante todo listo. Mientras puedas importar Basemap como lo hemos hecho allí, estamos bien para ir.

03:45 S1: Si por la razón que sea, eso no te funciona, puedes seguir adelante y obtener la descarga de la "Rueda" y la manera en que puedes hacerlo, llegando a esta fuente de binarios no oficiales aquí. Aquí tienes el enlace que utilizarías y de ahí, podemos conseguir Basemap. Sólo puede hacer "Ctrl-F, Basemap" y aquí estamos. Para mí, estoy en una versión de 64 bits de Python pero no se confunda. Si estás en un sistema operativo de 64 bits, probablemente tengas una versión de Python de 32 bits. Por lo tanto, solo si intencionalmente trataste de obtener una versión de Python de 64 bits, tienes una. El valor predeterminado es 32, independientemente del sistema operativo. Cifra cuál eres tú, y luego podrías descargar. Porque las versiones más nuevas de Python vienen con pip y esta versión de pip entiende de Rueda, lo que podemos hacer es ... Sigamos adelante y dejadme salir de este rápido real. Hagamos "Quit". Bueno. Déjenme cambiar de directorio. En realidad, no podemos hacer eso. Vamos a cerrar de esta manera.

04:47 S1: Digamos que lo van a rehacer. Voy a abrir la ventana de comandos aquí estoy en las descargas y lo que haríamos ahora es que haríamos "C: /python34/scripts/pipinstall", y entonces, simplemente haríamos Basemap, con suerte. Intentemos una vez más. Ahí vamos. Instalaríamos el Basemap 1.0, y este es en realidad una versión más reciente. Esto es 1.0.8 que ni siquiera vi en SourceForge. De todos modos, usted podría hacer eso y esto puede realmente actualizarme. Veremos qué pasa. Podemos seguir adelante y tratar de eso y veremos si eso funciona para mí. Dice que lo hizo.

05:29 S1: Podemos volver a comprobarlo por "C: /python34/python". Ahora, estamos ejecutando Python desde "mpl_toolkits.BasemapimportBasemap". Y de nuevo, siempre y cuando eso funcione, tienes que ir la instalación correcta. Ahora de nuevo, el archivo de la rueda, tendrá que utilizar pip para instalar o puede descargar la fuente, aunque eso fue interesante que no vi la versión actualizada. Eso es interesante. Sí, al ir a SourceForge, no sé dónde conseguiría la versión actualizada. -Pero al parecer, lo conseguimos en la fuente no oficial. Así que, de todos modos, ahí vas. Entonces, eso es todo, esperemos que tengas algo funcionando ahora. En el siguiente tutorial, lo que vamos a hacer en realidad es traer nuestra primera representación o gráfico o gráfico o lo que sea de un mapa básicamente. Así que, estad atentos para eso. Thanks for watching. 00:00 Speaker 1: What is going on, everybody? Bienvenido a la tercera parte de la sección cinco de nuestra visualización de datos con Python utilizando la serie de tutorial Matplotlib. En esto lo que estamos hablando es el tipo Basemap de adición a Matplotlib, que nos permite visualizar tipos geográficos, e incluso topológicos de mapas con Matplotlib.

00:25 S1: Así que para empezar, lo que vamos a seguir adelante y hacer es ... En primer lugar, tenemos que traer a Basemap, así que lo que hacemos aquí es de "mpl_toolkits.basemap importar Basemap". Así que esto es parte del kit de herramientas MPL, así que cuando lo instalamos, no es ... Para utilizarlo, no hacemos la típica importación de Basemap, se convierte en una parte de Matplotlib. Así que movernos a lo largo, necesitamos que para utilizar Basemap, y luego también tenemos que traer en pyplot de nuevo, porque al igual que pyplot ' s integral a cada otro gráfico Matplotlib que hemos cubierto hasta ahora, va a ser integral aquí. Y lo vamos a usar para mostrar, y también añadir título, y cosas así. Por lo tanto, vamos a importar "matplotlib.pyplot" como PLT como de costumbre.

01:22 S1: Ahora, con las computadoras, no tienden a entender el norte, el sur, el este y el oeste, ¿verdad? Así que no entienden muy bien la latitud y la longitud derecha fuera de la caja. Así que dicho esto, al igual que los sellos de fecha y hora, podemos manejar, para coordenadas latitudinales y longitudinales, sólo tenemos que hacer algún tipo de conversión. Así que lo que termina sucediendo en cambio es que los números occidentales ... ' La latitud de la causa está arriba y abajo, la longitud se deja a la derecha. Así que, los números occidentales serían parte de su ... Digamos que sería, longitudinal, estaría al oeste y al este. Los números occidentales se convierten en negativos, y entonces los números orientales serían positivos. Y entonces, los números del norte para, digamos, la latitud, estos serían sus números positivos, y los números del sur serían sus negativos. Por ejemplo, ¿cuál sería la latitud y longitud para, por ejemplo, la ciudad de Nueva York, donde las coordenadas de la ciudad de Nueva York son 40,7 al norte y 74 al oeste? Pues eso te dejaría con un 40,7, -74. Esas serían tus coordenadas. Así que con eso, vamos a seguir adelante y trazar nuestro primer gráfico.

02:47 S1: Primero, decimos ... Usted realmente no tiene que hacer necesariamente lo que estoy a punto de hacer, pero usted bastante hacer. [chuckle] Así que, diremos "m = Basemap" y entonces no vamos a poner nada en el lugar todavía. Y lo que eso hace es que básicamente inicializa Basemap, y es muy parecido cuando hicimos 'ax1 igual' y todas esas otras cosas. Lo que esto nos permite hacer es usar "m" como nuestro mapa; m es simplemente corto para el mapa. Y nos permite tomar eso y luego modificarlo más adelante. Ahora, podemos dejarlo así. Basemap viene con valores por defecto, por lo que es muy parecido a pyplot, donde en realidad ni siquiera tienes que llenarlo con nada. Así que vamos a decir, "m = Basemap", pero luego tenemos que por lo menos hacer algo simple y tal vez dibujar ... Vamos a dibujar las costas. Así que podemos decir, "m.drawlicolines" y que trazará líneas para la costa. Y entonces eso es básicamente todo. Llamamos a un "plt.show" y podemos mostrar este gráfico ahora. Por lo tanto, vamos a guardar y ejecutar eso, y aparece sólo un gráfico realmente simple. Y eso es todo, es todo es un default.

04:00 S1: Estamos dibujando costas, pero podemos ir más lejos con esto y podemos hacer "m.fillcontinentes". Así que esto es sólo las costas, y entonces lo que podemos hacer es, ahora podemos llenar para los continentes dentro de las costas. Y así, lo que ha pasado es que las áreas de agua se dejan blancas, mientras que los continentes, y básicamente la tierra, se llenan de gris. Y luego, otra cosa que podemos hacer es que podríamos decir "m.drawmapboundary". Y al menos ahora mismo, realmente no hace demasiado de un cambio, pero lo que hará por ti, es que dibujará, básicamente, límites en un mapa. Así que, en este momento, no es realmente hacer cosas ' causa que realmente no hemos añadido ningún límite para que específicamente para hacer por nosotros, pero sólo mantener que la mente es otro ejemplo de lo que podemos aplicar.

05:00 S1: Ahora, entrando en el Basemap aquí, aquí es donde podemos empezar a personalizar la representación real porque el mundo es cilíndrico, así que si usted tomó un mapa plano e intentó ... Digamos que tienes un mapa de tu coche y tienes una gran bola de ejercicio, y tratas de envolver ese mapa alrededor de esa bola, vas a tener un tiempo muy duro. [chuckle] Y la razón por la que se debe a que el mapa suele ser cuadrado y la pelota es esférica, pero el mundo también es esférico, por lo que cualquier representación cuadrada de un mapa es justa, de facto, distorsionada. Así que, si trataste de envolver ese mapa alrededor de la pelota, podrías hacerlo algo, pero las cosas no funcionarían a tu favor. Tenemos que entender que con los mapas, hay todo tipo de representaciones.

05:53 S1: Entonces, dependiendo de cuáles sean tus objetivos, ¿verdad? Si usted es un navegante, y usted está navegando entre América del Norte y América del Sur, o tal vez usted es un navegador y usted está simplemente navegando, tal vez, entre estados o países en Europa, usted no está probablemente demasiado preocupado por la distancia entre África y América del Norte, o usted no está realmente demasiado preocupado por la distorsión del tamaño de Canadá en comparación con tal vez la Antártida o algo así. Pero usted es ... Digamos que si viajas en un barco a través del océano desde África a los Estados Unidos, querrías que la distancia sea relativamente representativa de la distancia que realmente vas a recorrer, de acuerdo. Así que, ese sería un ejemplo de cuándo, tal vez querrías que esa zona no se distorsione, pero si viajas solo de Norteamérica a África, probablemente no estés tan preocupado por, tal vez, que Rusia esté un poco distorsionada en tamaño o en la Antártida para ser distorsionada, o que Groenlandia esté un poco distorsionada, o algo así.

06:58 S1: Así que, de todos modos, hay muchas proyecciones de pf por muchas razones y muchos usos. Por lo tanto, solo depende de lo que estés haciendo pero te mostraré cómo podemos encontrar un montón de las proyecciones. Pero por ahora, simplemente utilicemos una simple proyección cilíndrica Miller. Así que, en Basemap, podemos decir "m = Basemap", y luego, primero podemos decir la proyección, y podemos decir que equivale básicamente, lo que queramos, pero diremos, "Mil", que es corto para Miller. Y luego, tenemos las coordenadas que podemos ... Así, por ejemplo, podemos tener "llcrnrlat". Ahora, lo que esto significa es Lower Left Corner Latitude y luego, tenemos Lower Left Corner Longitud y luego, tenemos el Upper Right Corner Lat y Upper Right Corner Longitud. Entonces, lo que termina pasando es, digamos que eres ... Estamos usando Paint aquí, y tenemos nuestras coordenadas. Ahí vamos. Y tienes tus coordenadas aquí, y estas son tus coordenadas longitudinales, y estas son tus coordenadas de latitud.

08:13 S1: Y así, digamos que eres ... Esto es, tal vez, 10 aquí. Vale, solo digamos 10. Esto sería negativo 10, y esta será nuestra marca negativa 10, y digamos que quieres que algo sea una caja, quieres que tu mapa sea esta caja aquí. Pues bien, la forma en que lo harías es que se especifique lo que es esta coordenada, y se especifica lo que es esta coordenada. Y entonces, lo que Basemap va a hacer, es que llenará eso para ti; dirá, "Bien, bien, eso está bien". Tomaremos esta coordinación, y entonces, todo lo que hacemos es trazar una línea en la latitud de la latitud de la esquina superior derecha. Y luego, desde allí, trazamos una línea a esa coordenada longitudinal. Y luego, de nuevo, desde aquí, trazamos una línea de esta coordenada aquí hasta el valor de latitud de esta coordenada aquí. Y luego, volvemos a hacer exactamente lo mismo con la longitud que se remonta, y así es como dibuja esa plaza. Así que, cuando quieres dibujar una plaza, eso es básicamente cómo vas a hacerlo. Ahora, saldremos adelante y lo cortaremos aquí. Y en el siguiente tutorial, en realidad dibujaremos nuestra plaza y hablaremos de cómo se hace eso. Así que, de todos modos, mantente atento al siguiente video y gracias por ver. 00:01 Speaker 1: Hola a todos, y bienvenidos a la Parte 4 de la Sección 5 de nuestra visualización de datos con Python y la serie de tutoriales Matplotlib. En esta sesión estamos hablando de Basemap, y lo que estábamos haciendo en el tutorial anterior era representar sólo un ejemplo realmente simple de un mapa, que era esto. Y luego empezamos a hablar de la proyección, que actualmente estamos usando Miller, que en su mayor parte probablemente se vea el menos distorsionado de cualquiera de los gráficos que verás. A excepción de la masiva de la Antártida, pero aparte de eso estamos viendo bastante bien. Por lo tanto, lo que vamos a seguir con en este tutorial es que vamos a estar hablando de cómo podemos personalizar esta proyección. Así que la mayor parte de esa personalización de proyección sucede aquí mismo, dentro de este método de Basemap. Así que ahora mismo estamos definiendo la proyección como "Mill" que es para Miller. Ahora permítanme que lo lleve a la baja. Así que este sería nuestro Miller Projection, pero hay una tonelada de proyecciones y encontrarlas puedes llegar a este Basemap/...

01:01 S1: Tengo esto todo el tiempo con matplotlib.org. Pero por lo general sólo tomará un segundo, como usted puede ver su carga en este momento. Pero me meto en esto y me choca todo el tiempo. Ojalá no lo hiciera. Pero de todos modos, te mostraré cómo llegar allí cada vez que esta carga. Vamos a tratar de refrescar. Cuando encuentres las proyecciones verás cosas como esta. Como la Proyección Equilejana Azimuthal para que puedas ver cómo se ve ese aspecto. Entonces tienes el Mercator, y luego tienes como Cassini es un ejemplo, este es el Millers el que estamos usando. Y puedes leer un poco más sobre ellos en cuanto a lo que quieren. Así que esta es una versión modificada del Mercator que acabamos de ver, para que pueda ver esto en comparación con esto. No hay mucha diferencia allí. Ahora, ahí vamos. Así que para llegar básicamente usted vendría aquí y entonces usted podría ir a como "Configuración del Mapa." Básicamente usted puede hacer clic en eso, y usted puede ver todas las proyecciones posibles aquí.

01:56 S1: Así que eso es un poco de proyecciones que te dan. Y ese es solo el fondo del mapa. El mapa no tiene que parecerse a estos mapas, es sólo el ... Básicamente la distorsión del mapa, bueno, será como estos son. Por lo tanto, sólo depende del tipo de lo que estás buscando. Ahora de todos modos, así que ahí van, esas son sus proyecciones. Vamos a seguir usando el Miller por ahora que es corto ... Mill es para abreviar. La siguiente cosa como empezamos a hablar antes es, usted especifica entonces la esquina inferior izquierda lat/long, y luego se especifica la esquina superior derecha lat/long, y entonces Basemap va a crear una caja utilizando esas coordenadas. Así que lo que vamos a hacer, es que vamos a hacer la Lat CRNR inferior izquierda. Por lo tanto, el lat de esquina inferior izquierda será igual a -40. Entonces haremos la esquina inferior izquierda de largo, igual a ... Vamos a hacer -40 aquí también.

03:03 S1: Entonces haremos la esquina superior derecha lat, igual a 50, y luego la esquina superior derecha larga, igual a 75. Así que vamos a ahorrar y a correr eso. Y lo que obtenemos es básicamente África. Vale, un poco alrededor, pero básicamente África está en el medio. Así que es claramente un gráfico que va a ser algo sobre África, y tal vez algunas de las regiones más cercanas, pero sobre todo África. Así que, cerrando de este ahora, hay otro parámetro importante que vamos a ver mucho y que va a ser la resolución. La resolución puede ser un montón de cosas, por defecto su va a ser C. Y lo que significa C es el crudo. Así que es la resolución más básica que vas a ver. Ahora, esto es bastante bueno para un montón de mapas que usted podría necesitar, pero usted podría wanna aumentar esta resolución por todo tipo de razones.

04:01 S1: Así que eso era crudo, y entonces usted puede aumentar eso a L. Y L es apenas baja. Y usted puede ver ahora que tenemos tal vez algunos ríos aquí, tal vez algunos de los cuerpos más grandes de agua, cosas así. Y eso está en lo bajo. Y a medida que sigan subiendo la resolución, va a tomar un poco más de tiempo para cargar cada vez. Y así ahora podemos ir, digamos que fue L, así que podemos ir a I ahora. Esto será intermedio. Así que como puedes ver está tomando un poco más de tiempo ahora sólo para llevarlo a cabo pero ahí está. Y ahora podemos ver bien, tenemos algunas islas por aquí y un poco más ríos y cuerpos más pequeños de agua que aparecen y este es nuestro intermedio. Así que eso es genial, vale que tenemos eso. Luego después de intermedio hay H para arriba. Y esto va a tomar aún más tiempo para nosotros, pero hay incluso uno más grande que alto. Y cada vez que se actualiza básicamente o cada vez que se rebaja es básicamente un 80% de rebaja.

05:06 S1: Así que cada uno es un declive bastante significativo del anterior. Vale, este apareció, acaba de aparecer aquí abajo. Bueno, así que aquí de nuevo, tenemos aún más cuerpos de agua y cosas. Y lo que esto es útil para si usted está zoomed hacia fuera este lejos usted podría no saber pero, todavía podemos usar los mismos controles y cosas que habíamos usado antes, así que podemos acercar a este pequeño cuerpo de agua. Y ves que, oh, mi gosa, mira todos los pequeños detalles intrincados sobre este grande. Y luego podemos acercar a uno de estos pequeños aquí, y luego volver a mirar el ... Hay tanta complejidad en estos pequeños cuerpos de agua básicamente que somos capaces de entrar y ver realmente. O vamos por aquí y zoom en una y otra vez tenemos un muy buen detalle aquí. Quiero decir con el tiempo que podemos hacer zoom y podemos ver algo de aliasing en marcha. Pero en su mayor parte es bastante impresionante en lo alto. Y podemos hacer uno más y que sería F por completo y que nos daría la mejor resolución que nos es posible en Basemap.

06:09 S1: Ahora, una vez que hemos llegado tan lejos, esa es algunas de las cosas principales que vas a pasar a través de Basemap, pero otra cosa que no me importaría mostrar aunque ya estamos cargando aquí. Pero lo siguiente que cargaremos, lo acabaremos de cargar bajo y lo que podemos hacer es que podemos decir plt.title. Así, podemos añadir títulos como lo hemos aprendido antes y podemos llamar a este "ejemplo de Basemap con título", algo así. Y podremos ver que en la figura, somos capaces de añadir un título. Ahora, sigo siendo sólo kinda a la espera de que llegue esta resolución completa, sólo para que pueda mostrarlo a ustedes.

06:46 S1: Dependiendo de su ordenador, puede ser más rápido o más lento que mi ordenador de forma predeterminada, Python funciona con su CPU, no su GPU ni siquiera para los gráficos. Y luego, para que sea aún peor, por defecto, sólo utiliza un hilo a la vez por lo que, no vas a estar utilizando todos tus núcleos o algo así para mostrar cosas. Dependiendo de cuán rápido sea un solo núcleo en su CPU, eso es lo que va a hacer que esto sea más rápido o más lento. En realidad estoy bastante sorprendido de cuánto tiempo esto está tomando. Pero como se puede ver antes a medida que estamos haciendo zoom, el nivel de detalle es en realidad bastante alto, pero una cosa que se puede hacer es acercar a un área específica utilizando las coordenadas. Usted puede ahorrar mucho procesamiento allí. También, obviamente la resolución va a salvar a algunos y todo eso.

07:36 S1: Así que, de todos modos, el gráfico ahora es así, déjenme que lo tire hacia arriba para ustedes, y ahí vamos. Sólo podemos ver que es sólo más niveles de detalle aquí. Es un poco rezagado para que lo haga más grande. Pero podemos ver estos pequeños y pequeños puntos aquí, pero podemos acercarnos a ellos, y luego, continuar haciendo zoom, y continuar haciendo zoom, y podemos ver cuánto detalle hay en estas representaciones completas. Es realmente genial porque no es sólo un simple gráfico. Puede ser un simple gráfico si necesitas que sea así que volveremos. Sí. Tenemos un bajo aquí. Así que esto es mucho más rápido para que podamos aparecer. Y puedes ver ahora, tenemos nuestro título en aquí y todo eso.

08:15 S1: Así que, si sólo necesitas un simple gráfico e incluso éste muestra algunas de las cosas más importantes, pero nos faltan todas las pequeñas islas que estaban aquí antes, pero en realidad tenemos unas pocas islas. Pero de todos modos, podemos ver que tenemos muchas opciones en lo que respecta a la resolución y todo ello. Obviamente, incluso en este nivel de zoom, probablemente no estaría usando la resolución completa. Sólo utilizaría la resolución completa si se le hizo zoom a un área realmente específica. Así que, sí, ten eso en mente. De todos modos, eso es todo para este tipo de personalización de la sección de proyección. Y, en la próxima, de lo que estaremos hablando es de un poco más de opciones de personalización que podemos hacer como colorear y todo eso. Así que, estad atentos para eso. Gracias por ver.