Créer Des Applications Graphiques En Python Avec Pyqt5

Total Page:16

File Type:pdf, Size:1020Kb

Créer Des Applications Graphiques En Python Avec Pyqt5 Créer des applications graphiques en Python avec PyQt5 par Pierre Denis Thibaut Cuvelier 1 Créer des applications graphiques - en Python avec PyQt5 par Pierre Denis, Thibaut Cuvelier ISBN (EPUB) : 978-2-8227-0516-5 Copyright © 2017 Éditions D-BookeR Tous droits réservés Conformément au Code de la propriété intellectuelle, seules les copies ou reproductions strictement réservées à l'usage privé du copiste et non destinées à une utilisation collective ainsi que les analyses et les courtes citations dans un but d'exemple et d'illustration sont autorisées. Tout autre représentation ou reproduction, qu'elle soit intégrale ou partielle, requiert expressément le consentement de l'éditeur (art L 122-4, L 122-5 2 et 3a). Publié par les Éditions D-BookeR, Parc des Rives créatives de l'Escaut, Nouvelle Forge, 80 avenue Roland Moreno, 59410 Anzin www.d-booker.fr [email protected] Les exemples (téléchargeables ou non), sauf indication contraire, sont propriété des auteurs. Couverture : d'après une création de Marie Van Der Marlière (www.marie- graphiste.com) Mise en page : générée sous Calenco avec des XSLT développées par la société NeoDoc (www.neodoc.biz) Date de publication : 20/03/2017 Édition : 1 Version : 1.0 2 À propos des auteurs Pierre Denis Ingénieur civil en informatique, j'ai travaillé plus de 15 ans chez Spacebel, une société belge de développement logiciel dans le domaine spatial. J'ai découvert Python en 1999 et j'ai été immédiatement séduit. Je l'ai d'abord utilisé dans mon travail pour des tâches de support (qualité, documentation, livraison…), puis, progressivement, pour des projets de plus en plus complexes. J'ai notamment participé au développement de plusieurs applications GUI avec vues cartographiques pour des centres de mission satellite ; partant d'ILOG Views, wxPython et Qt, l'environnement de développement a évolué vers PyQt, ce qui s'est révélé extrêmement productif. Dans mes temps libres, je crée des projets open-source en Python (Unum, Lea) et de petites expériences en PyQt, dont un jeu de combat spatial. Thibaut Cuvelier Je me suis d'abord formé à l'informatique en autodidacte, avant d'entreprendre des études d'ingénieur civil en informatique ; je poursuis mes études par un doctorat en mathématiques appliquées à l'université de Liège. Conscient de l'importance du partage des acquis, je contribue activement depuis 2009 au site Developpez.com. De fil en aiguille, j'en suis arrivé à découvrir le langage Python, très pratique pour l'écriture de scripts, puis d'applications plus lourdes. En parallèle, j'ai aussi fait la connaissance de Qt pour le développement d'interfaces graphiques, plus productif encore en Python ou avec Qt Quick. J'apprécie particulièrement ce dernier dans le cas d'applications mobiles. 3 Avant-propos 4 1. Objectifs du livre Ce livre a été pensé pour vous mettre le pied à l'étrier dans le développement d'interfaces graphiques, que ce soit de manière classique (Développement d'une application avec des widgets) ou déclarative (Développement d'une application avec Qt Quick). Ces modules présenteront des interfaces graphiques relativement simples, mais représentatives de la grande majorité des besoins, peu importe votre choix de paradigme. Deux autres modules, plus avancés, complètent ces introductions (Affichage 2D interactif avec les vues graphiques côté classique, Qt Quick avancé côté déclaratif) avec des aspects dynamiques. Si vous avez besoin de dépasser ce stade, vous aurez suffisamment intégré les principes pour exploiter de manière efficace la documentation et le reste de PyQt. Par conséquent, cet ouvrage ne se conçoit pas comme une référence absolue à PyQt (qui serait de toute façon rapidement dépassée), mais bien comme un manuel d'apprentissage pour vous lancer dans le développement d'interfaces graphiques. 5 2. Public visé et prérequis Ce livre s'adresse à toute personne souhaitant programmer des interfaces graphiques en Python, que ce soit pour définir une simple boîte de dialogue ou développer une application plus complexe avec menus, barre d'outils, accès à une base de données, etc. D'une manière générale, nous supposons que vous maîtrisez les notions de programmation orientée objet en Python, notamment l'héritage. Autrement dit, vous débutez avec Qt, mais vous connaissez déjà Python. Vous pouvez lire les chapitres dans l'ordre qui vous convient. Toutefois, certains sont plus complexes et requièrent des notions introduites dans d'autres ; ces prérequis et le niveau de difficulté sont précisés en début de chaque chapitre. Notamment, les deux modules plus avancés se basent sur le contenu des modules précédents : il vaut mieux avoir lu Développement d'une application avec des widgets avant Affichage 2D interactif avec les vues graphiques , avoir lu Développement d'une application avec Qt Quick avant Qt Quick avancé. 6 3. Organisation du livre Les premiers chapitres de l'ouvrage (Préliminaires) portent sur des aspects généraux, non spécifiques à une manière ou l'autre de développer les interfaces graphiques. Il s'agit principalement de vous familiariser avec un environnement de développement intégré Python spécifiquement prévu pour PyQt — eric6. Ensuite, vous pourrez choisir votre voie : une approche impérative par assemblage de composants, des widgets (Développement d'une application avec des widgets) ; une approche déclarative par énonciation de liens entre des composants (Développement d'une application avec Qt Quick). Ces deux modules s'orienteront autour du développement d'une même application de gestion de bibliothèque. Vous pouvez les lire de manière totalement indépendante. La différence entre les deux réside réellement dans la philosophie : l'une ou l'autre approche est plus adaptée selon l'application à développer et la manière de penser des programmeurs. Un autre point important qui les distingue est le langage de programmation : Python est un langage impératif, il est difficile de l'utiliser dans l'approche déclarative ; c'est pour cela que Qt Quick utilise un autre langage, développé spécifiquement pour ce cadre (QML), même s'il est très facile de faire communiquer les deux environnements. Ensuite, les deux modules plus avancés proposent de construire sur ces acquis, afin de réaliser des applications plus dynamiques : soit de manière impérative avec les vues graphiques (Affichage 2D interactif avec les vues graphiques ) : ce cadre permet de réaliser des applications de visualisation présentant un grand nombre d'éléments dynamiques. C'est notamment le cas d'applications d'ingénierie ou de jeux vidéo ; soit de manière déclarative (Qt Quick avancé), avec diverses fonctionnalités pour écrire plus facilement des applications dynamiques, y compris avec du dessin en 2D et des scènes 3D. 7 4. Codes sources des exemples Vous trouverez sur la page du site des éditions D-BookeR consacrée au livre, onglet Compléments, une archive réunissant l'ensemble des codes sources des exemples du livre. Ceux-ci sont classés par projet et chapitre. Toutefois pour vous simplifier l'accès à ces codes au fur et à mesure de votre lecture, nous les avons aussi hébergés sur GitHub dans un dossier dédié. Chaque fois que vous rencontrerez l'icône , un simple clic dessus vous renverra vers le dossier contenant le code complet de l'exemple ou des exemples du chapitre. 8 5. Réglage de la largeur de l'écran Vous trouverez de nombreux exemples de code, formatés dans une police à chasse fixe. Afin d'éviter des retours à la ligne inopportuns à l'intérieur d'une ligne de code, la longueur maximale des lignes de code a été fixée à 70 caractères, une valeur suffisamment basse pour être affichée sur la plupart des supports, tout en étant suffisante pour que le code puisse être correctement formaté. Toutefois, il est possible que sur votre support la largeur maximale affichable soit inférieure à la limite fixée. Le paragraphe test ci-dessous permet de vérifier votre affichage. Il doit tenir sur deux lignes exactement : 0000000000111111111122222222223333333333444444444455555555556666666666 0123456789012345678901234567890123456789012345678901234567890123456789 Si ce n'est pas le cas, regardez si vous pouvez agrandir la taille de la fenêtre, diminuer la taille des marges ou diminuer la taille de la police d'affichage. Sur un téléphone portable, placez-le plutôt en mode paysage. Si vous n'y arrivez pas, ne vous inquiétez pas pour autant, la plupart des lignes de code sont inférieures à 65 caractères. 9 6. Accès aux vidéos La version numérique du livre contient quelques illustrations animées . Si vous lisez ce livre en ligne, elles sont intégrées à votre page et votre navigateur ira chercher de lui-même le format de vidéo qu'il supporte. Si vous lisez une version téléchargée, un clic sur l'image vous redirigera vers la vidéo en ligne au format MP4. Si votre navigateur par défaut ne supporte pas nativement le MP4, modifiez à la main l'extension du fichier dans l'url en remplaçant .mp4 par .webm. Note > Avant de cliquer, assurez-vous que le pointeur de votre souris s'est changé en main. 10 Préliminaires 11 Présentation de PyQt PyQt est la contraction de deux mots : d'un côté, Python (le langage de programmation utilisé) réputé fort simple d'apprentissage ; de l'autre, Qt, un cadriciel extrêmement complet (principalement pour des interfaces graphiques), mais écrit en C++. PyQt sert de couche de liaison entre ces deux mondes et apporte Qt à l'environnement Python. Qt est une bibliothèque multiplateforme, reconnue avant tout pour ses fonctionnalités d'aide à la conception d'interfaces graphiques. Cependant, Qt peut faire beaucoup plus : cette bibliothèque vient avec des modules pour l'accès aux bases de données SQL, un navigateur web complet réutilisable, un système d'aide, des fonctionnalités multimédia. Depuis quelque temps, elle propose de nouvelles fonctionnalités plus intégrées et de plus haut niveau, comme l'accès à des outils de cartographie et de localisation, à la communication sans fil (NFC, Bluetooth), à des graphiques et de la visualisation de données, etc.
Recommended publications
  • Ironpython in Action
    IronPytho IN ACTION Michael J. Foord Christian Muirhead FOREWORD BY JIM HUGUNIN MANNING IronPython in Action Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> IronPython in Action MICHAEL J. FOORD CHRISTIAN MUIRHEAD MANNING Greenwich (74° w. long.) Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> For online information and ordering of this and other Manning books, please visit www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact Special Sales Department Manning Publications Co. Sound View Court 3B fax: (609) 877-8256 Greenwich, CT 06830 email: [email protected] ©2009 by Manning Publications Co. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps. Recognizing the importance of preserving what has been written, it is Manning’s policy to have the books we publish printed on acid-free paper, and we exert our best efforts to that end. Recognizing also our responsibility to conserve the resources of our planet, Manning books are printed on paper that is at least 15% recycled and processed without the use of elemental chlorine.
    [Show full text]
  • Download User Guide
    SpyderX User’s Guide 1 Table of Contents INTRODUCTION 4 WHAT’S IN THE BOX 5 SYSTEM REQUIREMENTS 5 SPYDERX COMPARISON CHART 6 SERIALIZATION AND ACTIVATION 7 SOFTWARE LAYOUT 11 SPYDERX PRO 12 WELCOME SCREEN 12 SELECT DISPLAY 13 DISPLAY TYPE 14 MAKE AND MODEL 15 IDENTIFY CONTROLS 16 DISPLAY TECHNOLOGY 17 CALIBRATION SETTINGS 18 MEASURING ROOM LIGHT 19 CALIBRATION 20 SAVE PROFILE 23 RECAL 24 1-CLICK CALIBRATION 24 CHECKCAL 25 SPYDERPROOF 26 PROFILE OVERVIEW 27 SHORTCUTS 28 DISPLAY ANALYSIS 29 PROFILE MANAGEMENT TOOL 30 SPYDERX ELITE 31 WORKFLOW 31 WELCOME SCREEN 32 SELECT DISPLAY 33 DISPLAY TYPE 34 MAKE AND MODEL 35 IDENTIFY CONTROLS 36 DISPLAY TECHNOLOGY 37 SELECT WORKFLOW 38 STEP-BY-STEP ASSISTANT 39 STUDIOMATCH 41 EXPERT CONSOLE 45 MEASURING ROOM LIGHT 46 CALIBRATION 47 SAVE PROFILE 50 2 RECAL 51 1-CLICK CALIBRATION 51 CHECKCAL 52 SPYDERPROOF 53 SPYDERTUNE 54 PROFILE OVERVIEW 56 SHORTCUTS 57 DISPLAY ANALYSIS 58 SOFTPROOFING/DEVICE SIMULATION 59 PROFILE MANAGEMENT TOOL 60 GLOSSARY OF TERMS 61 FAQ’S 63 INSTRUMENT SPECIFICATIONS 66 Main Company Office: Manufacturing Facility: Datacolor, Inc. Datacolor Suzhou 5 Princess Road 288 Shengpu Road Lawrenceville, NJ 08648 Suzhou, Jiangsu P.R. China 215021 3 Introduction Thank you for purchasing your new SpyderX monitor calibrator. This document will offer a step-by-step guide for using your SpyderX calibrator to get the most accurate color from your laptop and/or desktop display(s). 4 What’s in the Box • SpyderX Sensor • Serial Number • Welcome Card with Welcome page details • Link to download the
    [Show full text]
  • Fira Code: Monospaced Font with Programming Ligatures
    Personal Open source Business Explore Pricing Blog Support This repository Sign in Sign up tonsky / FiraCode Watch 282 Star 9,014 Fork 255 Code Issues 74 Pull requests 1 Projects 0 Wiki Pulse Graphs Monospaced font with programming ligatures 145 commits 1 branch 15 releases 32 contributors OFL-1.1 master New pull request Find file Clone or download lf- committed with tonsky Add mintty to the ligatures-unsupported list (#284) Latest commit d7dbc2d 16 days ago distr Version 1.203 (added `__`, closes #120) a month ago showcases Version 1.203 (added `__`, closes #120) a month ago .gitignore - Removed `!!!` `???` `;;;` `&&&` `|||` `=~` (closes #167) `~~~` `%%%` 3 months ago FiraCode.glyphs Version 1.203 (added `__`, closes #120) a month ago LICENSE version 0.6 a year ago README.md Add mintty to the ligatures-unsupported list (#284) 16 days ago gen_calt.clj Removed `/**` `**/` and disabled ligatures for `/*/` `*/*` sequences … 2 months ago release.sh removed Retina weight from webfonts 3 months ago README.md Fira Code: monospaced font with programming ligatures Problem Programmers use a lot of symbols, often encoded with several characters. For the human brain, sequences like -> , <= or := are single logical tokens, even if they take two or three characters on the screen. Your eye spends a non-zero amount of energy to scan, parse and join multiple characters into a single logical one. Ideally, all programming languages should be designed with full-fledged Unicode symbols for operators, but that’s not the case yet. Solution Download v1.203 · How to install · News & updates Fira Code is an extension of the Fira Mono font containing a set of ligatures for common programming multi-character combinations.
    [Show full text]
  • Python Programming
    Python Programming Wikibooks.org June 22, 2012 On the 28th of April 2012 the contents of the English as well as German Wikibooks and Wikipedia projects were licensed under Creative Commons Attribution-ShareAlike 3.0 Unported license. An URI to this license is given in the list of figures on page 149. If this document is a derived work from the contents of one of these projects and the content was still licensed by the project under this license at the time of derivation this document has to be licensed under the same, a similar or a compatible license, as stated in section 4b of the license. The list of contributors is included in chapter Contributors on page 143. The licenses GPL, LGPL and GFDL are included in chapter Licenses on page 153, since this book and/or parts of it may or may not be licensed under one or more of these licenses, and thus require inclusion of these licenses. The licenses of the figures are given in the list of figures on page 149. This PDF was generated by the LATEX typesetting software. The LATEX source code is included as an attachment (source.7z.txt) in this PDF file. To extract the source from the PDF file, we recommend the use of http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/ utility or clicking the paper clip attachment symbol on the lower left of your PDF Viewer, selecting Save Attachment. After extracting it from the PDF file you have to rename it to source.7z. To uncompress the resulting archive we recommend the use of http://www.7-zip.org/.
    [Show full text]
  • How to Access Python for Doing Scientific Computing
    How to access Python for doing scientific computing1 Hans Petter Langtangen1,2 1Center for Biomedical Computing, Simula Research Laboratory 2Department of Informatics, University of Oslo Mar 23, 2015 A comprehensive eco system for scientific computing with Python used to be quite a challenge to install on a computer, especially for newcomers. This problem is more or less solved today. There are several options for getting easy access to Python and the most important packages for scientific computations, so the biggest issue for a newcomer is to make a proper choice. An overview of the possibilities together with my own recommendations appears next. Contents 1 Required software2 2 Installing software on your laptop: Mac OS X and Windows3 3 Anaconda and Spyder4 3.1 Spyder on Mac............................4 3.2 Installation of additional packages.................5 3.3 Installing SciTools on Mac......................5 3.4 Installing SciTools on Windows...................5 4 VMWare Fusion virtual machine5 4.1 Installing Ubuntu...........................6 4.2 Installing software on Ubuntu....................7 4.3 File sharing..............................7 5 Dual boot on Windows8 6 Vagrant virtual machine9 1The material in this document is taken from a chapter in the book A Primer on Scientific Programming with Python, 4th edition, by the same author, published by Springer, 2014. 7 How to write and run a Python program9 7.1 The need for a text editor......................9 7.2 Spyder................................. 10 7.3 Text editors.............................. 10 7.4 Terminal windows.......................... 11 7.5 Using a plain text editor and a terminal window......... 12 8 The SageMathCloud and Wakari web services 12 8.1 Basic intro to SageMathCloud...................
    [Show full text]
  • Anaconda Spyder
    Episode 1 Using the Interpreter Anaconda We recommend, but do not require, the Anaconda distribution from Continuum Analytics (www.continuum.io). An overview is available at https://docs.continuum.io/anaconda. At the time the videos were produced, Anaconda distributed a frontend called Navigator. Through Navigator you can launch applications, manage your installation, and install new applications. Continuum provides documentation for Navigator at https://docs.continuum.io/anaconda/navigator. For an easy-to-use tool you can use from the command line, try conda. From Windows, run conda in the command prompt. From Mac OSX or Linux, open a terminal (Apps/Utilities on OSX). The conda cheat sheet (https://conda.io/docs/_downloads/conda-cheatsheet.pdf) is particularly helpful. Using conda you can update everything from a single package to the entire Anaconda distribution. You can also set up your environment to run both Python 2.7 and a version of Python 3. It is important to install Anaconda "Install for Me Only." You can find detailed installation instructions for your platform at https://docs.continuum.io/anaconda/install. It would be a good idea to open a command line and type conda install anaconda-clean so that you can completely uninstall the distribution should the need arise. Spyder We do strongly recommend the free, open-source Spyder Integrated Development Environment (IDE) for scientific and engineering programming, due to its integrated editor, interpreter console, and debugging tools. Spyder is included in Anaconda and other distributions, or it can be obtained from Github (https://github.com/spyder-ide/spyder). The official Spyder documentation is at https://pythonhosted.org/spyder; however, we recommend that beginners start with the tutorial included with Spyder.
    [Show full text]
  • Jupyter Tutorial Release 0.8.0
    Jupyter Tutorial Release 0.8.0 Veit Schiele Oct 01, 2021 CONTENTS 1 Introduction 3 1.1 Status...................................................3 1.2 Target group...............................................3 1.3 Structure of the Jupyter tutorial.....................................3 1.4 Why Jupyter?...............................................4 1.5 Jupyter infrastructure...........................................4 2 First steps 5 2.1 Install Jupyter Notebook.........................................5 2.2 Create notebook.............................................7 2.3 Example................................................. 10 2.4 Installation................................................ 13 2.5 Follow us................................................. 15 2.6 Pull-Requests............................................... 15 3 Workspace 17 3.1 IPython.................................................. 17 3.2 Jupyter.................................................. 50 4 Read, persist and provide data 143 4.1 Open data................................................. 143 4.2 Serialisation formats........................................... 144 4.3 Requests................................................. 154 4.4 BeautifulSoup.............................................. 159 4.5 Intake................................................... 160 4.6 PostgreSQL................................................ 174 4.7 NoSQL databases............................................ 199 4.8 Application Programming Interface (API)..............................
    [Show full text]
  • Christie Spyder Studio User Guide Jun 28, 2021
    User Guide 020-102579-04 Spyder Studio NOTICES and SOFTWARE LICENSING AGREEMENT Copyright and Trademarks Copyright © 2019 Christie Digital Systems USA Inc. All rights reserved. All brand names and product names are trademarks, registered trademarks or trade names of their respective holders. General Every effort has been made to ensure accuracy, however in some cases changes in the products or availability could occur which may not be reflected in this document. Christie reserves the right to make changes to specifications at any time without notice. Performance specifications are typical, but may vary depending on conditions beyond Christie's control such as maintenance of the product in proper working conditions. Performance specifications are based on information available at the time of printing. Christie makes no warranty of any kind with regard to this material, including, but not limited to, implied warranties of fitness for a particular purpose. Christie will not be liable for errors contained herein or for incidental or consequential damages in connection with the performance or use of this material. Canadian manufacturing facility is ISO 9001 and 14001 certified. SOFTWARE LICENSING AGREEMENT Agreement a. This Software License Agreement (the “Agreement”) is a legal agreement between the end user, either an individual or business entity, (“Licensee”) and Christie Digital Systems USA, Inc. (“Christie”) for the software known commercially as Christie® Spyder that accompanies this Agreement and/or is installed in the server that Licensee has purchased along with related software components, which may include associated media, printed materials and online or electronic documentation (all such software and materials are referred to herein, collectively, as “Software”).
    [Show full text]
  • Lean, Mean, & Green
    Contents | Zoom in | Zoom outFor navigation instructions please click here Search Issue | Next Page THE MAGAZINE OF TECHNOLOGY INSIDERS LEAN, MEAN, & GREEN CAN AN ULTRA- PERFORMANCE CAR BE SUPERCLEAN? CHECK OUT THE SPECS ON THESE FOUR SUPERCARS Porsche Spyder 918 WHY GOVERNMENT REGULATORS MAKE A MESS OF ALLOCATING RADIO SPECTRUM CAUGHT! SOFTWARE THAT DETECTS STOLEN SOFTWARE U.S.A. $3.99 CANADA $4.99 DISPLAY UNTIL 3 NOVEMBER 2010 __________SPECTRUM.IEEE.ORG Contents | Zoom in | Zoom outFor navigation instructions please click here Search Issue | Next Page I A S Previous Page | Contents | Zoom in | Zoom out | Front Cover | Search Issue | Next Page BEF MaGS The force is with you Use the power of CST STUDIO SUITE, the No 1 technology for electromagnetic simulation. Y Get equipped with leading edge The extensive range of tools integrated in EM technology. CST’s tools enable you CST STUDIO SUITE enables numerous to characterize, design and optimize applications to be analyzed without leaving electromagnetic devices all before going into the familiar CST design environment. This the lab or measurement chamber. This can complete technology approach enables help save substantial costs especially for new unprecedented simulation reliability and or cutting edge products, and also reduce additional security through cross verification. design risk and improve overall performance and profitability. Y Grab the latest in simulation technology. Choose the accuracy and speed offered by Involved in mobile phone development? You CST STUDIO SUITE. can read about how CST technology was used to simulate this handset’s antenna performance at www.cst.com/handset. If you’re more interested in filters, couplers, planar and multi-layer structures, we’ve a wide variety of worked application examples live on our website at www.cst.com/apps.
    [Show full text]
  • R Lesson 1: R and Rstudio Vanderbi.Lt/R
    R Lesson 1: R and RStudio vanderbi.lt/r Steve Baskauf vanderbi.lt/r Digital Scholarship and Communications Office (DiSC) • Unit of the Vanderbilt Libraries • Support for data best practices (DMP tool, repositories), GIS, copyright, Linked Data (including Wikidata), tools (GitHub, ORCID, Open Science Framework, etc.), and Open Access publishing. • Offers on-demand educational programming, consultations, web resources • Currently offering lessons on Python, R, and GIS • More online at: vanderbi.lt/disc • Email: [email protected] vanderbi.lt/r Is R for you? <root> <tag>text</tag> output XQuery Text <more>something</more> (analysis, </root> structured XML display) beginner Python advanced input branching data structure processing logic looping building and manipulating data structures analysis visualization output transformation advanced R beginner vanderbi.lt/r Uses for R • Statistical analysis • Data wrangling and visualization • Literate programming (R Markdown) • Modeling • Web development (Shiny) This series will serve as a basic introduction to enable you to explore any of these topics vanderbi.lt/r R basics • Free, open source, multiplatform • Package development • makes R extensible, huge, and powerful. • more centrally managed than Python (CRAN=Comprehensive R Archive Network) • R the language vs. RStudio the IDE • R can be run by itself interactively in the console • R code can also be run as a script from the command line • RStudio is an Integrated Development Environment that makes it easier to run R interactively or as an entire script • RStudio is the ONLY common IDE for R (vs. many for Python) vanderbi.lt/r The Anaconda option • Includes Python, R, IDEs (Spyder and RStudio), Jupyter notebooks, and the VS Code editor as options.
    [Show full text]
  • Python Guide Documentation 0.0.1
    Python Guide Documentation 0.0.1 Kenneth Reitz 2015 09 13 Contents 1 Getting Started 3 1.1 Picking an Interpreter..........................................3 1.2 Installing Python on Mac OS X.....................................5 1.3 Installing Python on Windows......................................6 1.4 Installing Python on Linux........................................7 2 Writing Great Code 9 2.1 Structuring Your Project.........................................9 2.2 Code Style................................................ 15 2.3 Reading Great Code........................................... 24 2.4 Documentation.............................................. 24 2.5 Testing Your Code............................................ 26 2.6 Common Gotchas............................................ 30 2.7 Choosing a License............................................ 33 3 Scenario Guide 35 3.1 Network Applications.......................................... 35 3.2 Web Applications............................................ 36 3.3 HTML Scraping............................................. 41 3.4 Command Line Applications....................................... 42 3.5 GUI Applications............................................. 43 3.6 Databases................................................. 45 3.7 Networking................................................ 45 3.8 Systems Administration......................................... 46 3.9 Continuous Integration.......................................... 49 3.10 Speed..................................................
    [Show full text]
  • Conversion Therapy
    :<44,9 | 2013 :<44,9c SEXUAL ORIENTATION CONVERSION THERAPY: Can the Government BRIEFS Ban a “Cure?” *(5@6<9-094:<9=0=,(+0:(:;,9& How Many Days Can You Afford To Be Closed? PALINDROME CONSULTING’S EXCELLENT REPUTATION PROVIDES ESSENTIAL “INFORMATION PROTECTION” SERVICES *VZ[LMMLJ[P]LTVUP[VYPUN :LJ\YP[`PKLU[P[`[OLM[ MYH\K\SLU[ZV\YJLZ 7YVHJ[P]L WYL]LU[P]LTHPU[LUHUJL ,MMLJ[P]LKPZHZ[LYYLJV]LY`ZVS\[PVUZ *\[[PUNLKNL[LJOUVSVN`[YLUKZ"PUJS\KPUN *SV\K:VS\[PVUZ -SH[MLL0; Delivering Peace of Mind “DISASTER PROOFING” YOUR BUSINESS For a free book email INFORMATION SO YOU CAN WORK WHILE [email protected] OTHERS TRY TO RECOVER FROM A DISASTER 5,4PHTP.HYKLUZ+Y:\P[L5VY[O4PHTP)LHJO-3 ;LS! L_[,THPS!0:YLKUP'WJPPJWJVT www.pciicp.com 2 www.cabaonline.com :<44,9 2013 CONTENTS 06 President’s Message 08 Editor’s Message 10 Legal Round Up 20 Bishop Leo Frade Evangelist and Convicted Felon? 24 Excerpt from Cubans: An Epic Journey, the Struggle of Exiles for Truth and Freedom 35 Hypnosis: Unlearn the Fear Response of the Subconscious Mind 36 Antitrust and The NCAA Ed O’Bannon v. NCAA 40 Celebrating “El Día Del Abogado”: Spotlight on Jose “Pepe” Villalobos 50 News from the Nation’s Highest Court 64 Dichos de Cuba 66 La Cocina de Christina 67 Moving Forward “LAWYERS ON THE RUN” THE EVENT, WHICH WAS HELD ON APRIL 20, 2013, 56 AT TROPICAL PARK, HAD OVER 500 PARTICIPANTS, ON THE AND RAISED APPROXIMATELY $25,000! COVER :<44,9:<44,9cc SEXUAL ORIENTATION CHANGE EFFORTS 32 The Ninth Circuit Court of Appeals soon will address the constitutionality of California’s first-of-its-kind ban on gay conversion therapy for minors.
    [Show full text]