Skip to content

Conversation

@mahmutf
Copy link

@mahmutf mahmutf commented Dec 28, 2025

Thank you for preparing this library. I found it quite useful, and added some items that may be of use to you and others too. Here are the differences:

Subplot System

  • Add grouped subplots with shared data and individual series toggles
  • Add zoom/pan synchronization across main chart and subplots
  • Add shared crosshair with cursor sync (key: 'pycharting')
  • Add histogram subplot type
  • Fix histogram scale sync during pan/zoom operations
  • Preserve overlay labels through data updates

Additional Style for Markers & Overlays

  • Add dashed connector lines (dashed)
  • Add marker support

Bug Fixes

  • Fix chart height race condition when subplots exist
  • Increase ChartServer auto-shutdown timeout to 60s for browser throttling
  • Include bar index in data formatting

UI Polish

  • Add light/dark theme toggle with localStorage persistence
  • Consolidate toolbar (theme, measure, export) at top-left
  • Reduce histogram subplot heights (150px → 70px) for compact display
  • Remove header bar to maximize chart space
  • Bind server to configurable host (0.0.0.0 for Docker)

New tests added (21 tests, all passing):
- Styled overlays: marker, dashed, mixed formats
- Grouped subplots: multiple series (e.g., Stochastic %K/%D)
- Histogram subplots: _type metadata preservation
- DataManager.get_chunk(): styled overlay and grouped subplot slicing
- _get_local_ip(): IP detection with fallback chain
- plot() host/external_host parameters for Docker support

Also fixed:
- Import paths updated from src.* to pycharting.*
- Updated 3 existing tests to match new styled overlay format

Note: 6 pre-existing test failures unrelated to this PR:
- test_invalid_index_type, test_ohlc_constraint_*: validation was relaxed
- test_repr_with_overlays: __repr__ doesn't show overlay count
- test_package_import: src.__version__ never defined
These tests were failing before feature/labels branch changes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant