Published
Edited
Apr 14, 2020
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
md `
The first level of visualization design is domain problem characterization. This level
entails understanding the problem space which you are aiming to address. We must identify
the scope in which we wishe to address an issue, and ensure that it is specific enough
to acquire data and form a conclusive analysis on. This phase of design includes
an in depth understanding of domain-specific terminology and concepts. The next level is
data operation and abstraction design. This level entails forming the data in a fashion
that is abstracted from its domain specific terminology. This step allows us to consider how
data from our domain may be formed and ordered. The next step is encoding / interaction design.
In this step, we are considering how to make our data become information to a user. This encludes
considering the different encodings we may use to make a visually salient design, in which a user
can clearly follow. The last step is algorithm design, which includes actually executing the design
in code, in an optimized fashion.`
Insert cell
Insert cell
md `
This model is nested, as it forms a downstream flow of information. This means that we
use the information determined in one step, in order to follow through with the next
step. Specifically, The domain our algorithm relies on the tool we have designed, which
determines on the data which we have abstraction from a given problem space / domain.
We cannot do one without the other, and the quality of the output of each stage impacts
the success of the stages to follow,`
Insert cell
Insert cell
md `
At the domain specification stage, we face the threat of jumping to assumptions
about how much our audience cares about a given problem space. Within the
abstraction stage, we face the threat of abstracting the data from the problem
domain in a way that does not effectively address the problem. In the encoding/
interaction technique design, we face challenges of developing a design which
is not suitable for our user base, and ultimately does not provide solutions
or answers to our presented issue. In other words, our design may not make sense
to our user. In the algorithm stage, we ultimately face the threat of developing
an algorithm which is not optimized, and ultimately cannot perform to support our
proposed interactions.
`
Insert cell
import { viz } from '@stuartathompson/life-expectancy-vs-health-expenses'
Insert cell
md`## Visualization Analysis
For **two visualizations**, you are going to use the Nested Model of visualization design to describe what _you believe_ to be the intention of the work. For each one, you should first _display the visualization_ (either by importing it from a Notebook, or putting an \`<img>\` or \`<iframe>\` tag), and then write up the following analysis of the design process:`
Insert cell
viz
Insert cell
md `
<p class="subheader">Domain Problem and Data Characterization</p>
1. What **domain** is the visualization coming from?

The domain which this visualization refers to is how life expectancy changes with health care expenditure by country.
We are ultimately trying to identify which countries are effective in the funding which they provide to healthcare
in their countries. This visualization highlights the US in order to compare other countries to US trends.

2. What domain specific **vocabulary** is used in the work?

In this work, they use terminology such as 'health care expenditure' and 'life expectnacy', which are terms specific
to the domain of public health.

3. Who is the pertinent **target audience** within this domain?

The target audience of this domain could be healthcare professionals, those in charge of allocating healthcare
resources in the United States, or even citizens of the US who are concerned with the quality of care provided
by our current healthcare systems.

4. What **specific questions** does the target audience hope to answer?

How effective is the healthcare funding in my country, in comparison to others? Does our life expectancy raise as
we spend more on healthcare?

Based on those questions you've identified (based on the _audience_, in a particular _domain_), you are ready to move into the next stage in the design model.

<p class="subheader">Operation and Data Type Abstraction</p>
1. What generic _operations_ are required to answer the question(s) identified above? Indicate whether each operation is a _high-level_ or _low-level_ task, as described by Amar and Stasko (in the Munzner paper).
In this paper, the operations which are invovled are evaluating the different levels of spending, within the healthcare
domain, and identifying how that changes the number of years someone is expected to live. This is a high level task, is it aims to indentify general trends between two factors, and eliminate uncertainty about the methods of funding
healthcare in the United States.

2. What are the data types present in the data (e.g., categorical, continous, etc.)?
The value which is presented is both categorical and continuous. Expenditure and Life expectancy are both continuous,
and country is discrete / categorical.

Based on the required operations and data type, you are ready to consider available encodings.

<p class="subheader">Visual Encoding and Interaction Design</p>
1. Which visual encodings and interactions were selected to support the tasks identified in the previous step?

This tool uses scale, color, and spatial relationships on a line chart, which shows the change in life expectncy by
expenditure. The color encoding allows a user to highlight a given country, and compare it to the US, which is always
highlighted. The spatial distribution of the lines asserts a general trend between the two factors, for which the US
is a clear outlier.

2. We'll discuss this more in next week's notebook, but based on your current knowledge, do you believe these encodings and interactions allow users to sufficiently accomplish their tasks?
Yes, considering the data for the United States clearly differs from the other countries, it is easy to understand
that other countries provide more effective use of their healthcare funding.

<p class="subheader">Algorithm Design</p>
If any information is available on the algorithm design used to build the visualization, please make note of it here (if not, no worries).
`
Insert cell
import { chart } from '@d3/fan-chart'
Insert cell
md`# Fan Chart

This variation of a line chart switches to an area chart to show projected uncertainty in the future. Data: [IHME](https://covid19.healthdata.org/)`
Insert cell
chart
Insert cell
md `
<p class="subheader">Domain Problem and Data Characterization</p>
1. What **domain** is the visualization coming from?

The domain which this visualization refers to is in the realm of public health, but more specifically the deaths
by COVID-19.

2. What domain specific **vocabulary** is used in the work?

In this work, there is not a large use of text used to describe the mapping of data. However, it does use terms
such as deaths per day, and projection in terms of describing the effects of COVID-19 as they have been observed,
and may be anticipated in the future.

3. Who is the pertinent **target audience** within this domain?

The target audience of this domain could be anyone aiming become educated on pertinent effects of COVID-19.
Since this pandemic has such wide reaching impact on people universally, most people are searching for an
answer for the question of when this all may end. This makes the target audience very broad.

4. What **specific questions** does the target audience hope to answer?

What point are we at in the anticipated trajectory of the spread of coronavirus? How much worse will it get?
When will the death rate reach zero?

Based on those questions you've identified (based on the _audience_, in a particular _domain_), you are ready to move into the next stage in the design model.

<p class="subheader">Operation and Data Type Abstraction</p>
1. What generic _operations_ are required to answer the question(s) identified above? Indicate whether each operation is a _high-level_ or _low-level_ task, as described by Amar and Stasko (in the Munzner paper).
In this visualization, we are ultimately addressing the proposed issues at a high level. By using the count of deaths
over time, we are ultimately aiming to show the effects of COVID-19 from a very abstracted standpoint. Rather than
identifying very specific understanding of the disease itself, wh are measuring its impacts by how the number of
deaths changes by day.

2. What are the data types present in the data (e.g., categorical, continous, etc.)?
The values in this display are ultimately discrete, presented in a continuos fashion. Considering time is continuous,
and date themselves are discrete, time is often presented as a continuous ordinal variable.

Based on the required operations and data type, you are ready to consider available encodings.

<p class="subheader">Visual Encoding and Interaction Design</p>
1. Which visual encodings and interactions were selected to support the tasks identified in the previous step?

This tool uses a line chart with the trajectory of the line describing the change in the impacts of COVID-19 over time,
and the scale of the width of the line is used to determine the margin of error in determining the trajectory of the
disease.

2. We'll discuss this more in next week's notebook, but based on your current knowledge, do you believe these encodings and interactions allow users to sufficiently accomplish their tasks?
A line chart showing the change in a given rate over time is almost always effective in terms of visual understanding.
However, there is little description or interaction offered for the user to understand the problem space more. A user
may be left wondering why death count is the most important way to measure this, or even what the width of the line
means. Someone with less education in statistics or data related fields may not fully understand the concepts of
trajectory or margin of error.

<p class="subheader">Algorithm Design</p>
If any information is available on the algorithm design used to build the visualization, please make note of it here (if not, no worries).
`
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more