Chartexa.Domains.Simulation
1.0.0
dotnet add package Chartexa.Domains.Simulation --version 1.0.0
NuGet\Install-Package Chartexa.Domains.Simulation -Version 1.0.0
<PackageReference Include="Chartexa.Domains.Simulation" Version="1.0.0" />
<PackageVersion Include="Chartexa.Domains.Simulation" Version="1.0.0" />
<PackageReference Include="Chartexa.Domains.Simulation" />
paket add Chartexa.Domains.Simulation --version 1.0.0
#r "nuget: Chartexa.Domains.Simulation, 1.0.0"
#:package Chartexa.Domains.Simulation@1.0.0
#addin nuget:?package=Chartexa.Domains.Simulation&version=1.0.0
#tool nuget:?package=Chartexa.Domains.Simulation&version=1.0.0
Chartexa
A modular, high-performance, backend-agnostic charting engine — by KEDevO
What is Chartexa?
Chartexa is a rendering-backend-agnostic charting engine that cleanly separates data, logic, commands, rendering, and interaction.
Built from scratch in C#/.NET 10, it is designed for high-performance visualization with support for multiple rendering backends.
Key Capabilities
- High-performance rendering pipeline
- Pluggable renderers (WPF, DirectX 12, Skia, WebAssembly)
- Cross-platform and Python support
- Modular architecture
- Domain-native data packs: GeoSpatial, Industrial, Finance, Science, Medical, Power, Robotics, Imaging, AEC, Simulation
Installation
.NET (NuGet)
# Core engine
dotnet add package Chartexa.Core
# Renderers (choose as needed)
dotnet add package Chartexa.Rendering.Wpf
dotnet add package Chartexa.Rendering.DirectX
dotnet add package Chartexa.Rendering.Skia
dotnet add package Chartexa.Rendering.Web
# Optional modules
dotnet add package Chartexa.Data
dotnet add package Chartexa.Modifiers
dotnet add package Chartexa.Theming
# Domain packs (as needed)
dotnet add package Chartexa.Domains.GeoSpatial
dotnet add package Chartexa.Domains.Industrial
dotnet add package Chartexa.Domains.Finance
dotnet add package Chartexa.Domains.Science
dotnet add package Chartexa.Domains.Medical
dotnet add package Chartexa.Domains.Power
dotnet add package Chartexa.Domains.Robotics
dotnet add package Chartexa.Domains.Imaging
dotnet add package Chartexa.Domains.Aec
dotnet add package Chartexa.Domains.Simulation
Python
pip install chartexa
Requires the .NET 10 Runtime to be installed.
Quick Start
.NET / WPF
<Window xmlns:chartexa="clr-namespace:Chartexa.Rendering.Wpf.Controls;assembly=Chartexa.Rendering.Wpf">
<chartexa:ChartSurface x:Name="Chart"/>
</Window>
using Chartexa.Core.Axes;
using Chartexa.Data.Series;
Chart.XAxes.Add(new NumericAxis { Id = "X" });
Chart.YAxes.Add(new NumericAxis { Id = "Y" });
var series = new XYDataSeries();
series.Append(new[] { 1.0, 2.0, 3.0, 4.0 }, new[] { 10.0, 20.0, 15.0, 30.0 });
Chart.Series.Add(new FastLineRenderableSeries { DataSeries = series });
Chart.InvalidateChart();
Python
import chartexa as cx
# One-liner convenience functions
cx.line([10, 20, 15, 30, 25]).save("chart.png")
# Fluent API with multiple series
(cx.Chart(800, 600)
.line([1, 2, 3, 4], [10, 20, 15, 30], stroke="#4FC3F7", label="Revenue")
.scatter([1, 2, 3, 4], [12, 18, 17, 28], fill="red", label="Targets")
.save("multi_series.png"))
# Financial charts from Pandas DataFrames
import pandas as pd
df = pd.read_csv("stock_data.csv")
cx.candlestick(df).save("candlestick.png")
# Multi-panel dashboards
fig, axes = cx.subplots(2, 2)
axes[0, 0].line([1, 2, 3], [10, 20, 15])
axes[0, 1].scatter([1, 2, 3], [30, 10, 25])
fig.save("dashboard.png")
The Python package provides 40+ series types, NumPy/Pandas integration, Jupyter notebook support, LTTB downsampling for large datasets, and real-time streaming capabilities. See the PyPI page for full documentation.
Architecture
Chartexa uses a clean, layered architecture:
User Code → ChartSurface → Axes + Series
→ RenderPipeline → RenderCommand[]
→ Renderer (WPF / DirectX / Skia / Web)
Full architecture documentation is available in the repository (see ARCHITECTURE.md).
Available Packages
| Package | Description | Platform |
|---|---|---|
| Chartexa.Core | Core engine primitives | Cross-platform |
| Chartexa.Data | Data series and processing | Cross-platform |
| Chartexa.DataSources | Data source abstraction layer | Cross-platform |
| Chartexa.Layout | Dashboard layout system | Cross-platform |
| Chartexa.Rendering.Wpf | WPF renderer + controls | Windows (WPF) |
| Chartexa.Rendering.DirectX | DirectX 12 GPU renderer | Windows |
| Chartexa.Rendering.Skia | SkiaSharp cross-platform renderer | Cross-platform |
| Chartexa.Rendering.Web | WebAssembly / JSON export | Cross-platform |
| Chartexa.Modifiers | Interaction modifiers | Windows (WPF) |
| Chartexa.Theming | Theme system | Cross-platform |
| Chartexa.Domains.GeoSpatial | LiDAR, terrain, geospatial workflows | Cross-platform |
| Chartexa.Domains.Industrial | OPC UA/Modbus/MQTT/BACnet telemetry | Cross-platform |
| Chartexa.Domains.Finance | OHLCV, ticks, order book, replay | Cross-platform |
| Chartexa.Domains.Science | HDF5/NetCDF/TDMS spectral workflows | Cross-platform |
| Chartexa.Domains.Medical | ECG/EEG/EMG-style biosignal workflows | Cross-platform |
| Chartexa.Domains.Power | COMTRADE, PMU, harmonics, disturbances | Cross-platform |
| Chartexa.Domains.Robotics | ROS bag trajectory/grid replay | Cross-platform |
| Chartexa.Domains.Imaging | Thermal/multispectral/false-color workflows | Cross-platform |
| Chartexa.Domains.Aec | IFC/DXF/OBJ/glTF overlay workflows | Cross-platform |
| Chartexa.Domains.Simulation | Twin connectors and synchronized replay | Cross-platform |
Building from Source
Prerequisites
- .NET 10 SDK
- Windows (required for WPF and DirectX renderer development)
Commands
dotnet build
dotnet test
Run the WPF demo:
dotnet run --project examples/WpfDemo
Release and Publishing
Chartexa is structured for dual distribution:
- NuGet packages for .NET consumers
- PyPI package for Python consumers
For maintainers, release workflow and publishing commands are documented in docs/PUBLISHING.md.
License
MIT — see LICENSE for details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Chartexa.Core (>= 1.0.0)
- Chartexa.DataSources (>= 1.0.0)
- Chartexa.Playback (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|