<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Data Visualization on Ye Joo Park's Blog</title><link>https://park.is/categories/data-visualization/</link><description>Recent content in Data Visualization on Ye Joo Park's Blog</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Thu, 30 Jan 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://park.is/categories/data-visualization/index.xml" rel="self" type="application/rss+xml"/><item><title>Analyzing College Town Landlords at UIUC, BYU, and PSU</title><link>https://park.is/notebooks/20250130_analysis_of_college_town_landlords/</link><pubDate>Thu, 30 Jan 2025 00:00:00 +0000</pubDate><guid>https://park.is/notebooks/20250130_analysis_of_college_town_landlords/</guid><description>&lt;div class="cell border-box-sizing text_cell rendered" id="cell-id=4161515d-2e69-4fe4-8d08-5be823210676"&gt;&lt;div class="prompt input_prompt"&gt;&#10;&lt;/div&gt;&lt;div class="inner_cell"&gt;&#10;&lt;div class="text_cell_render border-box-sizing rendered_html"&gt;&#10;&lt;h2 id="%E2%9C%A8-Background"&gt;✨ Background&lt;a class="anchor-link" href="#%E2%9C%A8-Background"&gt;¶&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;I first moved into an apartment at UIUC during the summer of 2007. The apartment was Gregory Place under a management company called &lt;a href="https://jsmliving.com/"&gt;JSM&lt;/a&gt;. Here is a photo of the apartment from 2007. The construction site shows the second building being built.&lt;/p&gt;&#10;&lt;p&gt;&lt;img alt="Gregory Place 2007" src="https://github.com/user-attachments/assets/1ea504b8-5737-459d-96ac-1a8a49b49d5d"/&gt;&lt;/p&gt;&#10;&lt;p&gt;Back in 2007, JSM was regarded as one of the better management companies, along with Royse Brinkmeyer and Roland. Almost two decades later, JSM is still highly regraded. Prospective tenants lining up from the early morning in front of JSM's office to secure a lease was a sight to see in recent years.&lt;/p&gt;</description></item><item><title>Evaluating LLMs' DataViz Code Generation and Refinement Capabilities</title><link>https://park.is/notebooks/evaluating-llms-dataviz-code-generation-and-refinement-capabilities/</link><pubDate>Sun, 29 Sep 2024 00:00:00 +0000</pubDate><guid>https://park.is/notebooks/evaluating-llms-dataviz-code-generation-and-refinement-capabilities/</guid><description>&lt;div class="cell border-box-sizing text_cell rendered"&gt;&lt;div class="prompt input_prompt"&gt;&#10;&lt;/div&gt;&lt;div class="inner_cell"&gt;&#10;&lt;div class="text_cell_render border-box-sizing rendered_html"&gt;&#10;&lt;p&gt;Refining a visual often involves getting rid of unnecessary elements and directing a viewer's attention to specific elements. The process to enhance clearity, readability, and effectiveness is a iterative process that requires constant self-evaluations. This process requires many hours, although the output may look simple.&lt;/p&gt;&#10;&lt;p&gt;Can Large Language Models (LLMs) be used as a tool for generating visuals? While LLMs excel at text-based tasks, their ability to understand and generate complex concepts can be leveraged to assist in writing code to create visuals. But can LLMs be used to &lt;em&gt;refine&lt;/em&gt; visuals? This post tests LLM's ability to refine Plotly visuals.&lt;/p&gt;</description></item><item><title>COVID-19 Exploratory Data Analysis</title><link>https://park.is/notebooks/covid-19-eda/</link><pubDate>Mon, 01 Jun 2020 00:00:00 +0000</pubDate><guid>https://park.is/notebooks/covid-19-eda/</guid><description>&lt;div class="cell border-box-sizing text_cell rendered"&gt;&lt;div class="prompt input_prompt"&gt;&#10;&lt;/div&gt;&lt;div class="inner_cell"&gt;&#10;&lt;div class="text_cell_render border-box-sizing rendered_html"&gt;&#10;&lt;p&gt;This is a notebook from the live coding session by &lt;a href="https://www.datacamp.com/instructors/hugobowne"&gt;Dr Hugo Bowne-Anderson&lt;/a&gt; on April 10, 2020 via DataCamp.&lt;/p&gt;&#10;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;div class="cell border-box-sizing text_cell rendered"&gt;&lt;div class="prompt input_prompt"&gt;&#10;&lt;/div&gt;&lt;div class="inner_cell"&gt;&#10;&lt;div class="text_cell_render border-box-sizing rendered_html"&gt;&#10;&lt;h3 id="Imports-and-data"&gt;Imports and data&lt;a class="anchor-link" href="#Imports-and-data"&gt;&amp;#182;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;div class="cell border-box-sizing text_cell rendered"&gt;&lt;div class="prompt input_prompt"&gt;&#10;&lt;/div&gt;&lt;div class="inner_cell"&gt;&#10;&lt;div class="text_cell_render border-box-sizing rendered_html"&gt;&#10;&lt;p&gt;Let's import the necessary packages from the SciPy stack and get &lt;a href="https://github.com/CSSEGISandData/COVID-19"&gt;the data&lt;/a&gt;.&lt;/p&gt;&#10;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;div class="cell border-box-sizing code_cell rendered"&gt;&#10;&lt;div class="input"&gt;&#10;&lt;div class="prompt input_prompt"&gt;In&amp;nbsp;[1]:&lt;/div&gt;&#10;&lt;div class="inner_cell"&gt;&#10; &lt;div class="input_area"&gt;&#10;&lt;div class=" highlight hl-ipython3"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c1"&gt;# Import packages&lt;/span&gt;&#10;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;numpy&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="nn"&gt;np&lt;/span&gt;&#10;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pandas&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="nn"&gt;pd&lt;/span&gt;&#10;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;matplotlib.pyplot&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="nn"&gt;plt&lt;/span&gt;&#10;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;seaborn&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="nn"&gt;sns&lt;/span&gt;&#10;&lt;span class="c1"&gt;# Set style &amp;amp; figures inline&lt;/span&gt;&#10;&lt;span class="n"&gt;sns&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;set&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&#10;&lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="k"&gt;matplotlib&lt;/span&gt; inline&#10;&lt;/pre&gt;&lt;/div&gt;&#10;&#10; &lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;/div&gt;&#10;&lt;div class="cell border-box-sizing code_cell rendered"&gt;&#10;&lt;div class="input"&gt;&#10;&lt;div class="prompt input_prompt"&gt;In&amp;nbsp;[2]:&lt;/div&gt;&#10;&lt;div class="inner_cell"&gt;&#10; &lt;div class="input_area"&gt;&#10;&lt;div class=" highlight hl-ipython3"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c1"&gt;# Data urls&lt;/span&gt;&#10;&lt;span class="n"&gt;base_url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;'https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/'&lt;/span&gt;&#10;&lt;span class="n"&gt;confirmed_cases_data_url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;base_url&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s1"&gt;'time_series_covid19_confirmed_global.csv'&lt;/span&gt;&#10;&lt;span class="n"&gt;death_cases_data_url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;base_url&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s1"&gt;'time_series_covid19_deaths_global.csv'&lt;/span&gt;&#10;&lt;span class="n"&gt;recovery_cases_data_url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;base_url&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s1"&gt;'time_series_covid19_recovered_global.csv'&lt;/span&gt;&#10;&lt;span class="c1"&gt;# Import datasets as pandas dataframes&lt;/span&gt;&#10;&lt;span class="n"&gt;raw_data_confirmed&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_csv&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;confirmed_cases_data_url&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&#10;&lt;span class="n"&gt;raw_data_deaths&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_csv&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;death_cases_data_url&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&#10;&lt;span class="n"&gt;raw_data_recovered&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_csv&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;recovery_cases_data_url&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&#10;&lt;/pre&gt;&lt;/div&gt;&#10;&#10; &lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;/div&gt;&#10;&lt;div class="cell border-box-sizing text_cell rendered"&gt;&lt;div class="prompt input_prompt"&gt;&#10;&lt;/div&gt;&lt;div class="inner_cell"&gt;&#10;&lt;div class="text_cell_render border-box-sizing rendered_html"&gt;&#10;&lt;h3 id="Confirmed-cases-of-COVID-19"&gt;Confirmed cases of COVID-19&lt;a class="anchor-link" href="#Confirmed-cases-of-COVID-19"&gt;&amp;#182;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;div class="cell border-box-sizing text_cell rendered"&gt;&lt;div class="prompt input_prompt"&gt;&#10;&lt;/div&gt;&lt;div class="inner_cell"&gt;&#10;&lt;div class="text_cell_render border-box-sizing rendered_html"&gt;&#10;&lt;p&gt;We'll first check out the confirmed cases data by looking at the head of the dataframe:&lt;/p&gt;</description></item></channel></rss>