Lavorare con CorePlot installazione del progetto

Quando si lavora con applicazioni ad uso intensivo di dati, uno sviluppatore deve spesso fare molto di più che mostrare solo elenchi di record di dati in una vista tabella. La libreria CorePlot ti consentirà di aggiungere incredibili visualizzazioni di dati alle tue applicazioni. Scopri come in questa serie di Tuts + Premium!

La visualizzazione dei dati è fondamentale per aiutare l'utente a dare un senso ai dati e prendere decisioni importanti. CorePlot è una libreria di terze parti che consente di visualizzare una serie di grafici interattivi all'interno dell'applicazione. Ciò include grafici a linee, grafici a dispersione, grafici a barre e persino grafici a torta. È possibile personalizzare l'aspetto dei grafici e persino consentire all'utente di interagire con essi.


Disponibile anche in questa serie:

  1. Lavorare con CorePlot: installazione del progetto
  2. Lavorare con CorePlot: Plot Fundamentals
  3. Lavorare con CorePlot: Styling e aggiunta di grafici
  4. Lavorare con CorePlot: creazione di un grafico a barre
  5. Lavorare con CorePlot: creazione di un grafico a torta

Cosa copriremo

Nei prossimi 5 tutorial creeremo un'applicazione che mostra i dati relativi all'iscrizione degli studenti in un'università. Nello specifico, tratteremo:

  • Come aggiungere CorePlot a un'applicazione.
  • Le basi di CorePlot e come far funzionare un grafico.
  • Creazione di un grafico a linee.
  • Grafici per lo styling.
  • Creazione di un grafico a barre.
  • Astrazione della logica dei dati del grafico.
  • Creazione di un grafico a torta.

Conoscenza richiesta

È necessario avere una conoscenza intermedia dello sviluppo di iOS e del modello di sviluppo della delega. Una comprensione di CoreData è utile ma non necessaria. Gran parte delle funzionalità di CoreData è già stata implementata e sarete guidati attraverso ulteriori chiamate all'archivio dati.


L'applicazione di esempio

Nel codice sorgente troverai l'applicazione di base che useremo andando avanti. È un'applicazione di tabulazione di base che utilizza i dati principali per archiviare le informazioni sugli studenti e sugli argomenti e li elenca in visualizzazioni di tabelle separate. Puoi aggiungere uno studente o un argomento premendo il pulsante "+" nell'angolo in alto a destra.

La classe soggetto ha i seguenti attributi:

  • ID soggetto: Identificatore univoco, generato automaticamente.
  • Nome soggetto: Nome soggetto, descrive di cosa tratta l'argomento.

La classe studente ha i seguenti attributi:

  • ID studente:Identificatore univoco, generato automaticamente.
  • Nome dello studente: Il dato e il cognome dello studente.
  • ID soggetto: L'ID soggetto al quale sono iscritti. Per motivi di semplicità, assumiamo che uno studente possa iscriversi solo a un argomento.
  • Giorno registrato: Riteniamo che l'iscrizione vada oltre un periodo di 7 giorni. Il giorno di iscrizione è il giorno in cui lo studente è entrato in tale periodo per iscriversi.

Apri il progetto e assicurati che funzioni. Per questa serie non sto usando il conteggio automatico dei riferimenti, quindi dovremo gestire la nostra memoria. Dovresti vedere l'avvio dell'applicazione con una scheda "Studenti" e "Soggetti". Ogni scheda dovrebbe contenere una tabellaView con alcuni dati pre-compilati in ciascuno. Dopo aver confermato che tutto funziona, possiamo passare ad aggiungere CorePlot alla nostra applicazione.



Importazione di CorePlot

Il primo passo è scaricare l'ultima versione di CorePlot. Al momento della scrittura è v1.0. Visita la pagina principale della trama e vai alla sezione download.


Scarica il file zip. La libreria è di circa 140 mb quindi potrebbe essere necessario un po 'di tempo se si dispone di una connessione lenta.

Inseriremo i file della libreria CorePlot all'interno della nostra applicazione. È buona norma archiviare terze parti in una cartella separata dagli altri file di classe. Crea una nuova cartella nella cartella di origine "StudentTracker" chiamata "Librerie esterne".

È possibile includere CorePlot come installazione di progetto dipendente o libreria statica. Mi piace includerlo come installazione dipendente del progetto in quanto ci consente di accedere al codice sorgente e vedere come funzionano le cose come forma distinta solo vedendo i file di intestazione.

  1. Copia la cartella "CorePlot" nella cartella "Librerie esterne" appena creata all'interno della cartella sorgente di StudentTracker.

  2. Crea un gruppo in XCode chiamato lo stesso ("Librerie esterne")

  3. Nel Finder, individua il file di progetto "CocoaTouch.xcodeproj" ("CorePlot_1.0 / Source / frameworkCocoaTouch.xcodeproj") e trascinalo nel gruppo "Librerie esterne" in Xcode.

  4. Seleziona il file di progetto dell'applicazione in xcode e fai clic sulla scheda "Fasi di creazione". Da lì è necessario aggiungere la libreria CorePlot-CocoaTouch nel gruppo "Dipendenze obiettivo".
  5. Dovrai anche collegare il file binario alla libreria CorePlot. Espandi il gruppo "Collega binari con librerie" e aggiungi "libCorePlot-CocoaTouch.a"

  6. Dovrai inoltre aggiungere alcune impostazioni nella scheda Impostazioni di creazione. Imposta il percorso di ricerca dell'intestazione nella directory framework nella directory sorgente di CorePlot (dovrebbe essere "$ PROJECT_DIR / StudentTracker / Librerie esterne / CorePlot_1.0 / Source / framework /"). Spunta la casella a destra del testo (per indicare ricorsivo). Dovresti anche cambiare "Cerca sempre percorsi utente" su "Sì".

  7. Successivamente, aggiungi "-ObjC" al campo "Altri linker flag".
  8. CorePlot fa affidamento sul framework QuartzCore, quindi vai avanti e aggiungilo come framework richiesto.
  9. Infine, dovrai importare il file "CorePlot-cocoaTouch.h" in qualsiasi file che lo richieda. Non ne abbiamo ancora bisogno, ma prova ad aggiungerlo al file delegato dell'applicazione per assicurarti che tutto venga compilato correttamente.

Se il progetto viene compilato con successo, allora è tutto a posto!


Problemi comuni

 CPTAnnotation.h file non trovato

Ciò significa che la cartella di ricerca del percorso dell'intestazione non è stata localizzata correttamente. Assicurati di utilizzare "Percorsi di ricerca intestazione" e non "Percorsi di ricerca quadro". È importante assicurarsi che la casella di controllo sia spuntata e "Cerca sempre percorsi utente" è impostato su "Sì".

 Simboli non definiti per l'architettura i386: "_CATransform3DIsIdentity", referenziato da: ... 

Questi spaventosi errori di visualizzazione esistono perché il QuartzCore Framework non è stato incluso. Tutto ciò che devi fare è includere QuartzCore Framework (nel gruppo "Collega binari con librerie") e questi errori andranno via!


Incartare

Abbiamo avuto una buona introduzione a cosa può fare CorePlot e come aggiungerlo a un progetto esistente. La prossima volta ci sporcheremo le mani e inizieremo a costruire un grafico a linee per mostrare quanti studenti si sono iscritti a ogni giorno di iscrizione. Prenderti la prossima volta!