Replace every plot: a new plot widget behind the 14 panels that use wxPlotCtrl
まだ誰も着手していません。
評価
調査の方向性
Start by reading the wxPlotCtrl wrapper ewxPlotCtrl and the 30-method subset the 14 listed panels call, such as AddCurve, DeleteCurve and the axis and title setters. The first step is a design discussion on the new widget's API, not code. Done means an agreed interface, unit tests for the axis and tick logic, and a headless render of each current plot for comparison.
索引モデルが issue の本文から書いたものです。
説明
Andy, 2026-10-15, on the GROMACS minimisation energy plot: "We need to replace ALL plots with ones that work better."
That plot shows the old component's defaults: the x axis runs from -150 to 400 for steps 0 to 240, every y tick reads -4.51xe+06, and the unit is kJoule/Mole.
Where plots come from: every property plot goes through wxPlotCtrl (src/wxgui/wxplotctrl, about 15,000 lines) via ewxPlotCtrl. Users: GeomTracePropertyPanel, VectorPlotPropertyPanel, PlotAnyPropertyPanel, PlotMetaXY/3D, MoPanel, MomentsPanel, SpinSpin, TableAtomCoords, BuilderTraceStress, EqConstPlot, RxnConstPlot, RxnConstVsPlot, RxnErrPlot and RxnTrace. Together they call about 30 methods: AddCurve/DeleteCurve, pens and symbols, titles and axis labels, key, cursor index, client-coordinate mapping, and so on.
Plan
-
A new plot widget with that 30-method subset, so the panels change little. It provides:
- tight data ranges and nice ticks;
- offset or scaled axes for large values (E - E_ref, or x10^n in the label);
- unit names (kJ/mol, Hartree, eV, bar);
- Okabe-Ito colours (#210);
- hover readout, zoom and reset;
- an optional click callback (e.g. go to that geometry step when frames exist);
- PNG/SVG/CSV export.
Axis and tick logic gets unit tests.
-
A headless render of every current plot, old and new side by side, for review.
-
Switch the panels over in batches, then remove wxplotctrl.
The newer drawings (SpectrumCanvas, the MO diagram, the progress box) should share the axis and tick code.
Related: #334, #210, #180.
- 主要言語
- C
- スター
- 10
- フォーク
- 8
- 平均マージ
- 21分
- マージ済み PR(30日)
- 1
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
FriendsofECCE/ECCE のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
FriendsofECCE/ECCE#336 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
FriendsofECCE/ECCE#339 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 28/100
FriendsofECCE/ECCE#338 · コメント 2 件 ·
-
Basis Set Tool: periodic table cut off on the right; elements 110-118 still have placeholder namesオープン
難易度 4/5 3〜5日 初心者へのやさしさ 40/100
FriendsofECCE/ECCE#337 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
FriendsofECCE/ECCE#334 · コメント 1 件 ·
FriendsofECCE/ECCE の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 80/100
メンテナーはふだん 1 日以内に返信
-
`inverse()` of a controlled `CUGate` drops the phase parameter γ対応中かも @rupasri118 が今日担当しました。 オープンbug mod: circuit
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
Qiskit/qiskit#17223 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
OpenPrinting/libcupsfilters#284 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
libsdl-org/SDL#16530 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
fw876/helloworld#2067 ·
メンテナーはふだん 1 日以内に返信