Lichen.js Choropleth + Texture / Bivariate Choropleth.
A choropleth map of the United States encodes two variables per state: opioid prescription rates are shown with a purple sequential color scale, while death rates are overlaid with a texture of circles whose density varies across four thresholds. The textures are generated with Lichen.js, which defines SVG patterns with different circle spacings. Two layered path layers—one colored, one textured—are drawn for each state using an Albers USA projection. Opioid prescription and death rate data are joined to GeoJSON features by state ID, producing a bivariate choropleth that visually separates the two measures.
AI-generated descriptionA more formal attempt to create a d3 utility, lichen.js, for patterning SVG shapes.
A bare bones example of a choroleth with texture. Uses four different circle patterns to indicate a variable (in the death rate due to opioid overdose), and color to indicate a second variable (in this case prescription rates).
Legends could take two forms: A grid, or two linear legends. Depending on number of thresholds, either may be preferable.