Create one complete index.html for an interactive visualization.
DOMAIN
Build a bilingual digital-humanities experience about Chinese water-town cultural heritage and intercultural exchange for students, residents, museum visitors, and international audiences.
DATA AND TASK
Use https://huggingface.co/datasets/do-me/Geonames
Use a traceable subset containing Kunshan, Zhouzhuang, nearby lakes, Venice, named canals, and the Venetian Lagoon. Show the records on two interactive OpenStreetMap panels. Encode settlements with graduated population circles, keep hydrographic features visually distinct, and add one aligned chart with exact population labels so users do not have to compare circle area alone. Allow users to inspect feature class, feature code, coordinates, population field, elevation/DEM, timezone, and modification date.
TECHNICAL BOUNDARY
Return one complete index.html using browser-compatible HTML, CSS, and vanilla JavaScript. Do not require npm, React, Python, a server, or a build process. Include responsive design, keyboard access, loading and error states, and visible dataset attribution. Use only verified source rows and link each record to its GeoNames page. State that a purposive subset is not exhaustive. Do not infer cultural meaning, ecological change, community needs, or a historical route from place-name records. Do not generate README.md or conduct the critique yet.
Build · publish
Turn the draft into a Static Space
Keep the workflow to three moves. The visible tutorial belongs in the webpage; the README configures and documents the repository.
01
Create
New Space → Static HTML → Public.
02
Add
Place index.html and README.md at the repository root.
03
Test
Open the App and verify loading, interaction, attribution, mobile width, and failure states.
Prompt 2 Static Space conversion
I have attached my generated index.html. Convert it into a Hugging Face Static Space.
Preserve useful interactions; remove React compilation, npm, Python, backend, local-path, and environment-variable dependencies. Use browser-compatible HTML, CSS, and JavaScript with HTTPS resources. Add responsive behavior, keyboard access, readable contrast, alt text, and explicit loading/error states. Keep dataset attribution visible and never present simulated records as source observations.
Return exactly two complete files: index.html and README.md. Configure README.md with sdk: static. Keep the critique for the next stage.
Build · test
Test the case demo against the data it actually uses
Locate exact GeoNames rows on real basemaps, compare the four recorded settlement populations, and see which cultural or environmental claims still need other evidence.
Figure 2.1 · What?Items, attributes, links, positions and grids; tables, networks/trees, fields, geometry and sets; categorical, ordinal and quantitative attributes.Open source PDF ↗Figure 3.1 · Why?Consume or produce; lookup, locate, browse or explore; identify, compare or summarize—applied to explicit data, attribute, network, or spatial targets.Open source PDF ↗
Source: Tamara Munzner, Visualization Analysis and Design (2014), illustrations by Eamonn Maguire. Reproduced under CC BY 4.0. These are the same textbook cheat sheets cited in the Week 2 slides.
Worked abstraction · case demo
Data: a table of geospatial point records. Name, feature class/code, country, and timezone are categorical; GeoNames ID is an identifier; latitude, longitude, population, elevation, and DEM are quantitative. The selected records can be treated as geometry only after longitude and latitude are explicitly encoded as point positions.
Task: “Locate selected named features” pairs a search action with a spatial target. “Compare recorded settlement population” pairs a query action with a quantitative attribute target. “Compare water cultures” is not supported by these rows alone.
Critique · idiom
Choose the figure through the three-root decision tree
An idiom is the visual form—not the software. Select one root from the audience’s task, then inspect every demonstrated option beneath it.
Start with the audience’s taskChart type follows the decision path
Decision framework: Munzner (2014), Chapters 2–7; course synthesis also draws on Pu & Kay (2023), How Data Analysts Use a Visualization Grammar in Practice ↗. Mini figures are local teaching examples, not claims about a particular dataset.
Critique · algorithm
Choose a computational stack after the idiom
Specify transformation, aggregation, order, missingness, rendering, accessibility, and failure behavior—then select a library suited to that work.
Map + population comparisonTwo linked idioms; two reproducible stacks
Algorithm/tool atlas
72 libraries across Python and R
Search a task, idiom, or package. Each card includes a representative figure family and a direct official example or documentation URL.
The thumbnail is a representative output family drawn by this tutorial; follow “Official examples” to inspect output actually produced by each package. A package name is not an algorithmic justification.
Critique · evidence
Use three plain questions, each anchored in the course papers
Do not paste governance terminology. Connect a paper concept to something you actually inspected in the Dataset Card or original source.
Observed. The Hugging Face Dataset Card exposes a public 14.9-million-row Parquet conversion and identifies CC BY 4.0; the upstream GeoNames dump documents the positional schema. FAIR still requires us to record the exact version, field mapping, selection, and transformation used (Wilkinson et al., 2016; Dataset Card ↗; upstream export ↗).
Inferred. The selected rows make the two locations geographically relevant, but they do not make the dataset sufficient for cultural-heritage or environmental-change claims. A polished paired map could invite viewers to infer symmetry or connection that the records do not establish (Lan & Liu, 2024; Ziman et al., 2026).
Open question. The dataset does not establish whether Kunshan or Venice communities defined the comparison, its benefits, or acceptable reuse. CARE distinguishes technical access from collective benefit and authority to control (Carroll et al., 2021).
Additional evidence
Repair a domain–evidence gap; do not merely add more data
Cultural authority
UNESCO Venice ↗ documents designation context. It cannot represent everyday community experience; Kunshan priorities still require ethical local inquiry.
Environmental change
JRC Global Surface Water ↗ supports long-run water occurrence and change. It cannot establish cause, water quality, or cultural meaning.
Spatial context
OpenStreetMap ↗ supports waterways and places with attribution. Contributor coverage is uneven and features require verification.
Stage 03Make the evidence visible
Redesign the reasoning, not just the surface.
Change the data foundation, idiom, interaction, algorithm, or claim because the critique gave you a reason.
Redesign · response
Show what changed and why
The final Space should let an outside reader see the visualization, provenance, critique, revisions, and remaining limits without opening the README.
First draft
A heritage dataset with no Kunshan–Venice evidence
The earlier case named a cultural-heritage dataset while the visualized corridor did not come from its records.
→
Evidence-based redesign
Traceable map + magnitude
Exact GeoNames rows now appear on real basemaps, with population compared on a labeled log scale while the interface separates supported geographic context from unsupported cultural and ecological claims.
Prompt 3 Evidence-based redesign
Review my deployed Hugging Face Space: [PASTE URL]. Critique before revising.
1. PIPELINE — Apply Munzner’s four levels: domain; data/task (dataset and attribute types plus action + target); idiom selected through Compare / Understand Variation / Reveal Structure; algorithm/tool with explicit transformations, missingness, rendering, accessibility, performance, and reproducibility.
2. EVIDENCE — Apply and cite the assigned visualization, FAIR, CARE, and Croissant papers. Connect every concept to direct evidence from the Dataset Card or original source. Separate Observed, Inferred, and Open Question statements.
3. REDESIGN — Integrate only additional data that repair a named domain–evidence gap. Return complete revised site files in which the visualization, sources, critique, changes, and remaining limitations are visible on the rendered page—not only in README.md. Never invent dataset availability, community needs, or historical connections.
Redesign · submit
Three conditions for a defensible final Space
This replaces the former long checklist. Each category contains the details another reader must be able to verify.