charts-3d
3D chart visualization with Swift Charts using Chart3D, SurfacePlot, interactive pose control, and surface styling — plus a 2D Swift Charts construction reference (marks, axes, selection, SectorMark, scrollable charts). Use when creating data visualizations with Swift Charts.
npx skills add rshankras/claude-code-apple-skills --skill charts-3d --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Creates 3D data visualizations using Chart3D and SurfacePlot, including math-driven and data-driven surfaces, interactive camera pose control, surface styling, and multiple surfaces per chart. It also includes a 2D Swift Charts API reference for marks, axes, series styling, and interaction like selection and scrollable charts.
How it works
- Describes when to use features: 3D charts,
Chart3D,SurfacePlot, 3D surface plots, interactive drag-to-rotate viachart3DPose, and styling viaforegroundStylewith solid colors, gradients, height-based, or normal-based options. - Documents API surface and minimum versions for
Chart3D,SurfacePlot,Chart3DPose,Chart3DCameraProjection, andChart3DSurfaceStyle. - Provides SwiftUI code examples showing how to render math-driven and data-driven surfaces, enable interactive rotation with a bound pose, and apply various surface styles.
- Covers camera projection modes (
.perspective,.orthographic,.automatic), multiple surfaces in one chart, and mixing 3D with 2D API concepts. - Includes a Quick Start section with complete snippets for interactive rotation, styling patterns (solid, gradient, height-based, normal-based), and an example of a full terrain-like chart with height-based coloring and perspective projection.
- Explains how to use preset and custom poses, anti-patterns for interactive binding, and how to work with camera projection and multiple plotted surfaces in a single Chart3D.
- Provides a complete 3D example and notes WWDC-driven design fundamentals for Swift Charts including marks, axes, interactivity (selection), and accessibility considerations in 2D references.
When to use it
- When you want to visualize 3D data or mathematical surfaces with Swift Charts.
- When you need interactive 3D rotation and customizable camera perspectives.
- When you need to style 3D surfaces with colors, gradients, height-based or normal-based shading.
- When rendering multiple 3D surfaces in a single chart or producing data-driven 3D plots.
- When you also require the 2D Swift Charts API references for marks, axes, and scrollable charts.
What it can touch
- Uses APIs and symbols such as
Chart3D,SurfacePlot,Chart3DPose,Chart3DCameraProjection, andChart3DSurfaceStyle. - Demonstrates applying
foregroundStylewith solid colors,LinearGradient, and height-based or normal-based styling. - Shows how to bind a pose state with
.chart3DPose($pose)and how to set camera projection with.chart3DCameraProjection(...). - Illustrates composing multiple
SurfacePlotmarks inside a singleChart3D { }block.
Caveats
- Documents API availability and minimum versions (iOS 26 / macOS 26) for 3D features.
- Notes interactive patterns and anti-patterns to avoid misbinding interactivity.
- License is MIT.
# 3D Charts with Swift Charts Create 3D data visualizations using `Chart3D` and `SurfacePlot`. Covers math-driven surfaces, data-driven surfaces, interactive camera pose control, surface styling, and camera projection modes. ## When This Skill Activates Use this skill when the user: - Wants to create a 3D chart or 3D data visualization - Asks about `Chart3D`, `SurfacePlot`, or 3D surface plots - Needs to visualize a mathematical function as a 3D surface - Wants interactive drag-to-rotate on a 3D chart - Asks about 3D chart camera angles, pose, or projection - Needs to style 3D surfaces with gradients or height-based coloring - Wants to render multiple surfaces in a single 3D chart - Asks about data-driven 3D plots from an array of points - Needs the 2D Swift Charts API layer: marks, axes, series styling, selection, SectorMark pies/donuts, or scrollable charts ## Decision Tree ``` What 3D chart feature do you need? | +-- Visualize a math function f(x, y) -> z | +-- Use SurfacePlot(x:y:z:function:) | +-- Visualize data points as a surface | +-- Use Chart3D(data) { point in SurfacePlot(...) } | +-- Interactive drag-to-rotate | +-- Bind pose: .chart3DPose($pose) with @State var pose: C
- When This Skill Activates
- Decision Tree
- API Availability
- Quick Start
- Math-Driven Surface
- Data-Driven Surface
- Interactive Rotation
- Surface Styling Patterns
- Solid Color
- Linear Gradient
- Height-Based Surface Style
- Normal-Based Surface Style
- Surface Roughness
- Interactive Pose Control
What does the charts-3d skill do?
3D chart visualization with Swift Charts using Chart3D, SurfacePlot, interactive pose control, and surface styling — plus a 2D Swift Charts construction reference (marks, axes, selection, SectorMark, scrollable charts). Use when creating data visualizations with Swift Charts.
How do I install it?
Run `npx skills add rshankras/claude-code-apple-skills --skill charts-3d --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From rshankras/claude-code-apple-skills, a repository with 589 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
