Data Science Applications to Astronomy
Week 11: Communicating Data Science:
Reports & Dashboards
Reports
You (or your team) performed a detailed analysis.
A report shares your conclusions and recommendations with others.
Who are you reporting to?
Your team members (e.g., regular group meeting)
A wider collaboration (e.g., internal white paper, annual collaboration meeting)
Experts beyond your collaboration (e.g., journal article, scientific meeting)
Funding agency (e.g., progress/final grant report)
General public (e.g., press release, funding agency)
Planning committee (e.g., white paper for decadal survey)
What are you aiming to accomplish from the report?
Stimulate suggestions for how to solve current roadblock
Provide documentation for team members to build on your results
Help identify future opportunities for connections to other researchers/projects
Get critical feedback to identify weak points of analysis
Provide documentation to justify continued/increased support for project
Prepare report to advance specific goals
Use the knowledge gained from performing a detailed analysis positions
Narrative & choice of figures (in report body) directly support report's goals
Typical Scientific Report Structure
Summary of Conclusions/Recommendations
Abstract
Executive Summary
Opening paragraphs "above the fold"
Context:
Why did you do this work?
Problem or unmet need
Previous studies left unanswered question
What other information is needed to understand your approach and results?
Why did you choose this approach, as opposed to alternatives?
Describe Input Data
Where did data come from?
How was data collected?
What is known (or unknown) about quality of data?
What concerns about data should be kept in mind?
Describe Data Analysis & Outputs
How were data analyzed?
What are the outputs of the analysis?
Sometimes includes limited straight-forward results
Interpret Data
Explain rationale for each conclusion/recommendation
Conclusions/Recommendations
Concise summary
What comes next?
Motivate what you want to do next
Inspire others to contribute
Appendices
Supporting Data, Tables, Figures, Codes
More details about Analysis Methods & Implementation Details
Describe checks that were performed and passed
Pros of Typical Written Scientific Report
Provides details needed to understand, evaluate and/or build on results
Great for referring back to long after report was prepared
Sense of accomplishment from finishing a project
Cons of Typical Written Scientific Report
Can take significant time to prepare
Can take significant time to understand
Easy to overlook important elements "buried" in a long report
Readers may skim/skip over parts
Often "dry"
Oral Reports/Presentations
Summarizes key elements of written report
Refers to written report for details (e.g., data, methodology, analysis, complete list of assumptions/caveats)
Should still highlight most important assumptions/caveats
Best presentations tell a story
Easier to maintain audience's attention
More likely to be remembered
Common Presentation Structures
Solve a Problem/Need
Problem... How Found the Solution... Solution
Problem... Solution... Reasoning
The Big Idea
One one hand... On the other hand... Call to Action...
What is... What could be... Call to Action...
Hero's Journey (hopefully abridged from Campbell version)
Example of Hero's Journey adapted for presentation
Set the scene/provide context
Introduce the characters (data?)
Begin the journey
Encounter the obstacle
Overcome the obstacle
Resolve the story
Make the point explicit
Call To Action
Common Presentation Elements
Polished opening to capture's audience's attention/imagination
Asking audience a question
Dramatic pause / use of empty space
Call to Action
Dashboard
Goal: Efficiently communicate what can be learned from data
Support people in making future decisions
Won't represent the best-possible analysis
Automates performing common tasks & analysis
Needs to be robust & capable of handling corner cases gracefully
Example Dashboard Structure
Select which data to display
Summary/simplified version of data
Temporal evolution of data and/or summary
Comparison dataset or model
Select which comparison to make
Visualization of comparison data/model
Summary of comparison data/model
Temporal evolution of comparison data/model (on top of data?)
Opportunities to dig deeper to better understand numbers
Minimally processed data avaliable
Drilldown to help users find data of interest/concern
Examples of Dashboards at Penn State
Examples of Regional Dashboards
Pros of Dashboard
Enables people to gain insights efficiently
Accelerate science
Reduce errors by automating routine steps
Allows team members to focus on other steps
Can integrates expertise from multiple team members
Cons of Dashboard
Takes significant time to make pipeline robust
Takes significant time to design effective visualizations
May not be able to refer back to dashboard's state at previous time
Takes time/knowledge to keep running smoothly
Often want to update dashboard (repeatedly) as needs change
Risks oversimplifying complex cases
Can contribute to leaders becoming overconfident
Key Differences between a Report & a Dashboard
| Reports | Dashboards |
|---|---|
| Static | Dynamic |
| Reviewed & Proofed | Rely on previous tests |
| Explanatory | Exploratory |
| Tailored to support message | Effective for any incoming data |
| Help reader reach your conclusion | Help viewer form hypothesis |
Dashboards aim to
Reduce cognitive load of viewer...
but provide all information necessary
Anticipate questions that viewers will have...
but questions change with time/new data
Be flexible enough to deal with whatever data comes in...
but incoming data changes with time
Q&A
Accessibility
Should we choose colors for our dashboard assuming there is someone who is colorblind? Or can I choose any?
In the dashboard project, how much time should be spend on accessibility?
Projects
For our project dashboard/presentation, who is our intended audience? The class? Are there any specific considerations we should keep in mind due to this?
For presentation, the audience is your peers in the class.
For dashboard, your README can state your intended audience. Some possibilities:
Another member of your research group (potentially most helpful)
A researcher you've never met
An observer/telescope operator
Another member of this class (reasonable default option)
Will presentation dates be assigned soon?
How can I make an interactive 3d plot in Julia?
let
local n = 20
labels = ["Type Ia", "Type Ib", "Type IIa", "Type IIb"]
df = DataFrame(:col_x=>rand(n), :col_y=>randn(n), :col_sz=>0.2.+0.8.*rand(n), :col_color=>labels[rand(1:4,n)])
PlutoPlotly.plot(
df, x=:col_x, y=:col_y, color=:col_color,
marker=attr(size=:col_sz, sizeref=maximum(df.col_sz)/100, sizemode="area"),
mode="markers")
end
using PlutoPlotly
layout = Layout( title="Mt Bruno Elevation", autosize=false, width=500, height=500, margin=attr(l=65, r=50, b=65, t=90) )
plot(surface(z=z_data), layout)Data Disagregation & Drilldown
df_by_method = groupby(df,:discoverymethod);
Discovery Method:
Show Drilldown Plots
I'm having trouble having plots pop up in another window.
Misc
Is flux as good as tensorflow?
Deep Learning Frameworks
Python-based
Julia-based
Should a colloquium talk be given at around the same level as a presentation to the group doing research?
How different should the group that actively works on that project be treated from the broad astrophysics community?
How different should the group that actively works on that project be treated from the broad astrophysics community?
Collaborating
How do you currently collaborate on projects requiring coding?
Asynchronous
Write separate files/functions/modules
Maintain independent repositories
Merge changes via git
Create branches for new features, so main branch is always usable
Synchronous
Like asynchronous, but ask questions as you go
Pair Coding: Driver & Navigator
Debugging: Explainer & Audience
Beware of using shared filesystem
What tools do you use for collaborating on coding projects?
Tools
Merging updates: Git
Sharing screen: Zoom, Teams, Virtual Desktop
Collaborative coding: VS Code/VS Codium, Repl.it, Google Colab
Setup/Helper Code
Built with Julia 1.11.5 and
CSV 0.10.15DataFrames 1.7.0
Downloads 1.6.0
HTTP 1.10.15
Plots 1.40.11
PlutoPlotly 0.6.2
PlutoTeachingTools 0.3.1
PlutoUI 0.7.61
To run this tutorial locally, download this file and open it with Pluto.jl.