I began by searching for a Wisconsin state shapefile and downloading that to my drive. Using a separate website (Mapshaper) I uploaded my downloaded shapefile into the database where it provides me with a TopoJSON file output. Since my data was already in WGS 84 I didn't need to make any changes to the projection. While my goal for this first exercise was to transform my shapefile to a TopoJSON file, the same steps can be applied when wanting to transform spatial data to a GeoJSON file (Question 2.1, 2.2, & 2.3): After the data is uploaded to MapShaper or another identifier, rather than selecting TopoJSON, you could also select GeoJSON. The main way to differentiate between these two file types is that TopoJSON tends to be used more for smaller file sizes and ideal for web maps or maps where the topology needs to be preserved more precisely. On the other hand, GeoJSON files are better for larger file sizes and are usually more common. The way to upload and read a -JSON file is to create a new javascript entry (+ button) underneath the last entry and upload the file. Once this is complete, Observable automatically creates a "File Attachment ()" section where the file can be read and further utilized for feature classes, etc.
Here I have added a cell to include my selected .csv file. I chose to use Age & sex data of Wisconsin counties from the Census Bureau- American Community Survey.
Here I uploaded my csv file that contains data over Wisconsin county forests. This file contains both length and area for the area of interest. I opened up a new javascript line where I entered the necessary code and searched for my "wisconsin_county_forests" .csv. When uploading and reading a CSV file in ObservableHQ (Question 2:4) it is done by creating a javascript entry for the csv_data and inserting the file attachment containing the data. Once this is complete, the data can be read and interpreted for further normalization or data collection.
The variable that I wanted to normalize in my .csv, was to multiply shape_area by shape_leng to get the total surface area of forests across counties in Wisconsin. This is accomplished by (Question 2:5) by adjusting the "raw" values I had, as seen in my csv data, where I can compare them across different population/sizes/other variables. I created a "d3.csvParse" where I inserted my csv file attachment again and this time chose the selected figures/variables I wanted to include in my normalization. This function carried out the calculations so I could get the total surface area of forests across Wisconsin counties.
With my Total Surface Area normalization calculated, I am able to successfully understand the total amount of space that these forests occupy across all counties which aids in representing spatial information. The importance of normalization is seen (Question 2:5 continued) in the way that sometimes the "raw" data can be a little misleading. Large counties can have bigger totals and copious amounts of data, where working with a smaller, normalized, figure can allow for a fairer comparison across geographic/spatial units.
Finally, my last step for exercise 1 was to create a key value map that can be used for joining attributes together. This is essential for the steps I'll be taking in exercise 2 because it links each county's chosen ID to its normalized value.