問題タブ [dynamic-data-display]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - DynamicDataDisplay ChartPlotter はすべてのプロットを削除します
私の WPF アプリケーションには、4 つの LineGraphs をプロットできる D3 ChartPlotter があります。これは XAML コードです。
whered3
は DinamicDataDisplay の名前空間で、これはコード ビハインド (の関連部分) です。
私が今やりたいことは、このプロットを削除し、別のポイント セットを使用して再描画することです。残念ながら、D3 の (貧弱な) ドキュメントと Web の両方で、その方向に進むものを見つけることができません。
何をすべきか、どこを見るべきかについて何か提案はありますか?
ありがとう!
wpf - 凡例の非表示と対数スケールの使用に関するWPFDynamicDataDisplayバージョンの問題
私はMicrosoftのD3をWPF(Silverlightではない)で使用しています。私は、伝説を隠すことができるバージョンのD3を必死に探しています。古いバージョンのD3を使用して、オンラインでいくつかの例を見つけました。このバージョンのソースをソリューションに追加すると、使用していた他の機能(対数目盛でグラフをプロットする)が失われました。対数目盛の例で使用されたD3の別のバージョンには、「凡例の非表示」がまだ実装されていませんでした。どうやら、私が見た例では、相互に排他的な異なるバージョンを使用していました。さらに、私は1つのバージョンを取得して別のバージョンに変換するのに十分なc#の知識がありません。
対数目盛でChartPlotterを作成し、凡例を非表示にできる、WPF用のD3の(できれば最新の)バージョンを使用するソリューションを提供してください。
ありがとう
c# - WPF DynamicDataDisplay - 数値の代わりに Y 軸に文字列を配置する
WPF (Silverlight ではない) D3 を使用して、Y 軸に文字列を配置することは可能ですか? 具体的には、ステータス値 (「高」、「中」、「低」が 1、0、-1 としてマッピングされているとしましょう) を含むタイムラインのグラフがあり、y 軸にステータスが必要な状況について話しています。数字の代わりにティック...
ありがとう!
c# - 動的データ表示 - WPF - キャンバスにテキストを追加する必要がある - C#
動的データ表示 WPF チャートを使用しています。グラフにプロットされた曲線上のすべてのポイントの横にラベルを表示する必要があります。
正確な機能は次のとおりです。
すべての曲線には、そのデータと、色、マーカーの形状などを含む説明を保持するオブジェクトがあります。また、その特定の曲線に対してラベルを表示する必要があるかどうかも教えてくれます。
チェックボックスを使用して、プロット上のすべての曲線上のすべてのポイントのラベルを非表示/表示するオプションもあります。
ユーザーがマーカーを左クリックして、その横にラベルを表示できる 3 番目のオプションがあります。
ここで、各ポイントの ElementMarkerPointGraph と共にラベルを追加し、ラベルの可視性を設定することで、以前に実装しました。このアプローチではパフォーマンスが大幅に低下することはわかっています。
私は今、私が提供する場所でテキストをキャンバスに直接レンダリングできるソリューションを作成しようとしています。また、キャンバスからテキストを削除する方法についても助けが必要です。
キャンバスにテキストをネイティブに追加する方法はありますか? そうするための最も効率的な方法は何ですか?
編集:プロッターがズームするにつれて、テキストを移動する必要があります。プロッターがいつズームするかは既にわかっているので、テキストを適切な場所に移動できるようにする必要があります。
c# - WPF DynamicDataDisplay - マーカーを使用した遅いプロット
マーカーを使用しているときに、D3 の ChartPlotter が表示されるのを待つのに非常に苦労しています。もちろん、Gazillion レコード (まあ、700,000 レコード) をプロットしようとしています。ラインだけを使用する場合は、すべて問題ありません (20 秒程度)。マーカーを使用する場合、5 分で話します。それは受け入れられません。
何か案は?
これが私が行ったことであり、その下に説明があります。
説明:
- プロッターの凡例を非表示にし、ShowLegend を使用して独自の凡例を作成します。これは、凡例にマーカーしかないと表示されないためです (間違っていますか?)
- そうしないと、プロットが更新されないか、更新されてもファイルに保存されないため、プロット ウィンドウを最小化および最大化します。これは、ウィンドウを移動しても機能しますが (ある種の再描画イベントだと思います)、プロセスは自動であるため、ユーザーは操作を行いません。無効化を試みますが、無駄です。アイデア?
ありがとう!
c# - ホバー時の要素の検索 - WPF - C# - 動的データ表示
Dynamic Data Display には、MarkerPointsGraph というクラスがあります。これは FrameWorkElement から派生し (途中で一連の他のクラスを介して、最も直接的な親は PointsGraphBase になります)、OnRenderMethod をオーバーライドしてチャート上に一連のマーカーを描画します。
これは、画面上にレンダリングされるポイントごとに、適切なマーカー タイプ (たとえば、Triangle、Circle など) の render メソッドを 1 回呼び出すことによって行われます。これらのマーカーの 1 つにマウスが置かれたことを識別する方法を見つけて、そのマーカーのツールヒントを設定できるようにする必要があります。
ポイントを画面位置からビューポート位置、およびデータ位置に変換し、元に戻すことができる一連のメソッドがあります。つまり、画面値を対応するデータ値またはビューポート値に変換し、その逆も同様です。
また、このフレームワーク要素のツールヒントを開くイベントと、これらの各マーカーのピクセル サイズもあります。ユーザーが特定のマーカーにカーソルを合わせている限り、ユーザーがカーソルを合わせたポイントを特定し、markerpointsgraph にツールチップの値を設定させる必要があります。
ただし、値を変換するための変換とメソッドは、特に x 方向でうまく機能していないようです。y - 方向は問題ないようです。
以下は、アイデアを説明するサンプルコードです。
ここで、injSecondary と injTertiary は、2 つの垂直 Y 軸を提供する 2 つの挿入されたプロッターです。これらは、プライマリ チャート プロッタと非常によく似た動作をします。
ここで何か問題が発生していますか?何らかの理由で、実際にクリックされたポイントよりかなり前のポイントが buffer 句を通過しています。
wpf - wpf動的データ表示でコード下の領域を描画するベジエ曲線
dynamicdatadisplay を使用してグラフを作成するプログラムがあります。曲線の下の指定された領域を埋める必要があります (曲線全体ではなく、一部だけです。たとえば、x 軸に 0 から 1 の洞がある場合、x 軸の 0.2 から 0.5 に対応する曲線の下の領域だけです)。 -軸)。
誰もこれを行う方法を知っていますか? 正弦曲線のこのセグメントに対応する Y 値を使用してベジエ曲線を作成し、それを埋めることができるかもしれないと考えていましたが、何かを描画するコマンドが得られません。
動的データ表示でベジエ曲線を描く方法を知っている人はいますか?
Path Geometry Figure を使用してベジェ曲線を実装することもできますが、それをプロットに挿入してズームすると、プロットのサイズは変わりますが、ベジェ曲線は変わりません!
どんな助けでも本当に感謝します!
wpf - wpf動的データ表示で指定されたポイントを強調表示してラベルを付ける方法は?
グラフ内の特定のポイントを強調表示する方法を知っていますか?
この指定されたポイントのラベルを表示することも可能ですか?
何か案は?
wpf - DynamicDataDisplay ChartPlotter スクロール水平軸
ドキュメントが不足しているため、このライブラリについてはまだかなり大雑把です。
デバイスからのデータのキャプチャによってキャプチャされたデータをリアルタイムで表示する ChartPlotter オブジェクトがあります。デバイスから新しいデータが来るたびに呼び出される次のイベントがあります。
ChartPlotter の標準設定では、グラフはウィンドウに自動的に収まります。水平軸を自動的に左にスクロールして、キャプチャの最後の 10 秒 (たとえば) のみを表示したいと思います。これを達成する方法はありますか?
ありがとう
c# - ドラッグ可能なポイント
動的データ表示を使用して、wpf でチャートを操作しています。動的にドラッグ可能なポイントを挿入したいと思います。今までは、このようなものを挿入することができました
コードの後ろに挿入したいのですが、残念ながら方法がわかりません! プロジェクト マップで名前を付けるとすぐに、そのプロパティの一部を変更し、この特定の要素を変更するだけです。
チャートがズームまたはパッドされたときにポイントもそれを行うように、ドラッグ可能なポイントを自分で行う方法を教えてもらえますか?
ありがとう。