I am publishing the first interactive chart bundle from my crude benchmark comparison workflow. The question is practical: how do different crude grades line up on API gravity and sulfur, and which comparison rows deserve the most careful handling?
For this pass I pulled the analysis into three views:
- an ECharts scatter for quick inspection of the API/sulfur relationship
- a Plotly scatter for fuller hover detail and benchmark-comparable filtering
- a Folium regional map for API gravity context
The comparison I care about
API gravity and sulfur are not the whole crude-quality story, but they are a useful first pair of coordinates. Light/sweet grades and heavier/sourer grades behave very differently in refining conversations, so the scatter is a compact way to check whether the benchmark rows are sitting where I expect them to sit.
The main thing I am watching is comparability. A chart can look tidy while still mixing repeated, partial, or differently sourced grade records. For the benchmark-comparable view, I use a canonical row-per-grade selection rule with source-tier prioritization so the WTI vs Brent slice has an explicit basis.
Interactive charts
ECharts scatter plot
A quick browser-rendered view of the API/sulfur points, loaded from the published JSON.
Loading ECharts option JSON...
Plotly scatter plot (full dataset)
Plotly scatter plot (benchmark-comparable)
Folium regional map
Data files: ECharts option JSON · Benchmark-comparable points CSV · WTI vs Brent comparison CSV
Notes from this pass
The ECharts and Plotly views are deliberately similar. I want to catch disagreements between the exports, not decorate the same result six different ways. The Folium map adds a different angle: regional API gravity context, which is useful when the scatter raises a question about where a group of grades is coming from.
I am also publishing the WTI vs Brent comparison CSV alongside the visuals. If I am going to invite comparison, the selection rule should be visible rather than tucked away in notebook state.
What I am checking next
Next I want to tighten the narrative around outliers and make the benchmark-source assumptions easier to inspect from the project page. The visuals are useful already, but the interpretation still needs a little more hand-holding than a scatter plot can provide on its own.
Related project
See the full implementation context at /portfolio/projects/energy-crude-oil-industry.