{"size": 1162, "ext": "scrbl", "max_stars_repo_path": "_scribblings/creating.scrbl", "max_stars_repo_name": "jadudm/tbl", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "_scribblings/creating.scrbl", "max_issues_repo_name": "jadudm/tbl", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "_scribblings/creating.scrbl", "max_forks_repo_name": "jadudm/tbl", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 34.1764705882, "max_line_length": 114, "alphanum_fraction": 0.5946643718}
#lang scribble/manual
@(require tbl
          scribble/example
          racket/sandbox
          racket/bool
          racket/runtime-path
          "config.rkt"
          (for-label tbl))

@(define ev
   (call-with-trusted-sandbox-configuration
    (λ ()
      (parameterize ([sandbox-output 'string]
                     [sandbox-error-output 'string]
                     [sandbox-memory-limit 4096])
        (make-evaluator 'racket
                        #:requires '(plot/pict plot/utils))
        ))))
    
@title[#:tag "creating"]{Creating Data}

It is possible to create a @racket[tbl] from scratch. More likely, data will be loaded from some external source.

@;{FIXME: This has a richer interface than documented.}
@defproc[(read-csv
          [filename-or-url string?]
          [#:header-row? header-row? boolean? true])
          tbl?]{Reads a CSV file, either locally or from a remote URL, and returns a @racket[tbl].}

@examples[#:eval ev
          #:label #f
          (require tbl)
          (define citiesT (read-csv "https://think.cs.vt.edu/corgis/csv/graduates/graduates.csv?forcedownload=1"))
          (show-tbl-pict citiesT #:columns 5)]