問題タブ [visualization]

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.

0 投票する
3 に答える
2805 参照

javascript - JavaScript は大規模なデータセットを視覚化する準備ができていますか?

通常、Excel で折れ線グラフまたは積み上げ棒グラフとして視覚化するいくつかのデータ (10 ~ 50 列、数十万行) があります。
ユーザーは、個々のサンプルに到達するためにグラフをズームインおよびズームアウトできるようにしたいと考えていますが、この種の操作は実際には Excel を屈服させます。

ブラウザーでの視覚化を処理するインライン JavaScript を使用して、データを HTML ページに埋め込むことを考えています。flotr JS チャート作成ライブラリのようなものがチャートに利用されます。

  1. これはばかげた考えですか?
  2. ブラウザはこの種の負荷に対応できていますか?
  3. これは解決済みの問題で、質問する前にもっと徹底的にグーグルで検索する必要がありましたか?
0 投票する
4 に答える
1282 参照

objective-c - git DAG の増分線形化

私はGitXの作者です。GitX の機能の 1 つは、ここで見られるように、ブランチの視覚化です。

この視覚化は現在、git から発行されたコミットを正しい順序で読み取ることによって行われています。コミットごとに親がわかっているため、正しい方法でレーンを構築するのはかなり簡単です。

独自のコミット プールを使用し、コミットを自分で線形化することで、このプロセスをスピードアップしたいと考えています。これにより、既存のロードされたコミットを再利用でき、正しい順序でコミットを発行する必要がないため、git がコミットをより速く発行できるようになります。

ただし、これを達成するためにどのアルゴリズムを使用すればよいかわかりません。コミットのロードには長い時間がかかる可能性があるため (100,000 件のコミットで 5 秒以上、すべて表示される必要があります)、ビルドがインクリメンタルであることが重要です。

Gitk も同じように進んでおり、実装方法を示すパッチがここにありますが、私の TCL スキルは弱く、パッチは十分にコメントされておらず、理解するのが少し難しくなっています。

また、何十万ものコミットを処理する必要があるため、このアルゴリズムが効率的であることも望んでいます。また、表に表示する必要があるため、特定の行へのアクセスが高速であることが重要です。

これまでの入力、必要な出力、およびいくつかの観察事項について説明します。

入力:

  • コミット ID をコミット オブジェクトにマップするハッシュ テーブルの形式で、コミットの現在のプールがあります。このプールは完全である必要はありません (すべてのコミットが必要です)
  • 新しいコミットがロードされるたびに呼び出すことができるコールバックを使用して、git からの新しいコミットで別のスレッドをロードしています。コミットが行われる順序は保証されていませんが、ほとんどの場合、次のコミットは前のコミットの親になります。
  • commit オブジェクトには、独自のリビジョン ID とそのすべての親のリビジョン ID があります
  • リストする必要がある支部長のリストがあります。つまり、表示されるべき DAG の単一の「トップ」はありません。また、単一のグラフ ルートである必要もありません。

出力:

  • これらのコミットをトポロジー順に線形化する必要があります。つまり、親がリストされた後にコミットをリストすることはできません。
  • 上のスクリーンショットに見られる「分岐線」も必要です。それらのほとんどは子に依存しているため、これらはおそらく事前に計算する必要があります。

いくつかの注意事項:

  • コミットのリストを再配置する必要があります。たとえば、一方のヘッドを他方の先祖にするコミットが現れるまで、関連のないコミット (ブランチ ヘッド) が必要になる場合があります。
  • 複数のブランチ ヒントを表示する必要があります
  • データがまだロードされている間、少なくとも部分的なビューを利用できるように、このプロセスは増分的であることが重要です。これは、新しいデータを途中で挿入する必要があり、支線を再調整する必要があることを意味します。
0 投票する
4 に答える
2056 参照

python - Pythonで変更されたときにIPアドレスを視覚化する方法は?

新しいターミナル ウィンドウを開くたびに外部 IP アドレスを収集し、現在時刻とともにテキスト ファイルに追加する小さなスクリプトを作成しました。IP アドレスがいつ/どのくらいの頻度で変更されるかを視覚化する方法についてのアイデアを探しています。私は自宅とキャンパスの間を行き来し、スクリプトを使用してそれらを分離することができましたが、それらを別々に視覚化するとよいでしょう。

私は頻繁にmatplotlibを使用しています。何か案は?

0 投票する
1 に答える
2865 参照

graph - graphvizを使用して格子を描画するときにノードにy位置を課すにはどうすればよいですか?

Graphvizを使用して格子を描画しています。
ノードは数字のセットです。

ラティスなので、ノードの高さ位置(y)は、ノードによって表されるセット内の要素の数を表すようにします。次に、表現をよりクリーンにするために、x位置をgraphvizで定義する必要があります。

出来ますか?

ドットのドキュメントによると、ノードの位置を定義する属性posが必要です。しかし、さまざまな方法で何度も試しましたが、ノードの位置が定義されているグラフを取得できませんでした。誰かがこれで成功しましたか?

以下は私が使用する古典的なドットファイルです:

1つのノードの高さが定義されているファイルの例を誰かが書くことができれば、私は非常に感謝しています。

0 投票する
6 に答える
13078 参照

algorithm - ユニークな色を生成する

いくつかのデータをテクスチャに描画したい:連続した多くのアイテム。それらは順番に作成されておらず、すべて異なるサイズである可能性があります(メモリヒープを考えてみてください)。各データ項目は小さな長方形であり、区別できるようにしたいので、それぞれに固有の色を付けたいと思います。

これで、rand()を使用してRGB値を生成し、それらがすべて異なることを期待できますが、RGB空間で適切に分散されない可能性があります。これより良い方法はありますか?たとえば、(ほぼ)繰り返される前に、さまざまな色を循環させる良い方法は何ですか?

色はアイテムのデータと一致する必要はありません。多くの値を見て、それらが隣接しているため、それらが異なることを確認できるようにしたいと思います。

私は何かを理解することができましたが、これは興味深い質問だと思います。:)

0 投票する
1 に答える
611 参照

java - Java3D シミュレーションの割り当て

私は、java3D (パーティクルなど) を使用して宇宙の始まりをシミュレートするタスクを割り当てられており、5 つの異なるセクションで構成する必要があります...それぞれの最小の長さは 15 秒です。パーティクル スープ ステージのようなステージ - 基本的に 5 つの区別可能なビジュアライゼーション。複雑である必要はありません。設定されたプログラムされた動作で球体が動き回るだけです。

私は、インターポレーターに依存する単純な遊園地の乗り物を構築する以外に、java3D で実際に多くのことをしたことはありません。

タイム ラインを維持し、異なるステージ間を切り替えるにはどうすればよいでしょうか?

このシミュレーションをどのように構築するのが最善かを考えていました。PositionInterpolator の使用は、パーティクルの移動と衝突の検出に適していますか? または、私が探しているものを達成するためのより良い方法はありますか?

これまでのところ、いくつかのパーティクルのモデル化を開始しました。さまざまなサイズと色の単純な球であり、それらを単純な宇宙内にランダムに配置し、PositionInterpolator でランダムな方向を適用し、Transform3D を使用して回転を設定しました。

ガイダンスとヘルプをいただければ幸いです。

0 投票する
3 に答える
426 参照

c++ - データ クラスを GUI コードにリンクするにはどうすればよいですか (C++ でオブジェクトの属性を表示するため)。

Dataコードの実行時に何千ものインスタンス (オブジェクト)を持つクラス (C++) を呼び出します。DataWidgetオブジェクトの属性を表示するウィジェット(Qt)があります。ウィジェットを迅速に作成するために、オブジェクト属性をファイルに書き込んで、ウィジェットにそのファイルの属性を解析させました。このアプローチは機能しますが、スケーラブルでもきれいでもありません。

より明確にするために、私の要件は次のとおりです
。1 -DataWidget複数の異なるDataオブジェクトの属性を一度に表示できる必要があります
2 - 1 秒あたりDataWidget数千のDataオブジェクトを表示できる必要があります
3 -新しいオブジェクトDataWidgetを生成するコードと一緒に実行する必要があります4 - 各オブジェクトは、ファイル/データベースに永続的に保存する必要がありますData
Data

現在、GUI が作成され、DataWidgetが作成された後、実験が実行され、何千ものDataオブジェクトが生成されます (それらの一部を定期的にファイルに書き込みます)。実験の実行後、DataWidget最後Dataにファイルに書き込まれたオブジェクトが表示されます (それらは XML ファイルに書き込まれます)。

現在のファイル アプローチでは、実験の実行後に複数のファイルを取得することで(1)を満たすことができます。実験は に関連付けられていないため、同時実行性がないため、新しいファイルが存在することを に通知するシグナルを追加するまで(3)DataWidgetは実行できません。DataWidget

私は 2 つの理由でこのアプローチを進めていません。まず、ファイルがすぐにディスクに書き込まれなくても、キャッシュ システム実装しない限り、この方法がスケーラブルであるとは想像できません。車輪の再発明ですか?次に、Dataグラフ データ構造のラッパーであり、Graphml を使用して (Boost グラフ ライブラリ、つまりwrite_graphml()を介して) 構造を XML ファイルに書き込み、Boost のread_graphml()で構造を読み戻す必要があります。ファイルをオブジェクトに読み込みDataます...つまり、プログラムの実験部分がオブジェクトを XML にエンコードし、XML をファイルに書き込みます (ただし、できればディスクではなくメモリに書き込みます)。DataWidgetファイルから XML を読み取り、それをオブジェクトにデコードします。

すべてのキャッシングなどを処理するデータベースを使用する必要があるように思えます。さらに、ファイル/データベースのステップをスキップして、プログラム内の に渡すことができるように思われますData(DataWidgetおそらくへの参照を渡します)。のリストData)。それでも、Dataファイル/データベースへの保存手順は完全に無意味ではありません。間違ったタイミングで間違った方法で使用しているだけです。

私の要件を考えると、より良いアプローチは何ですか?

このようなデータを処理および表示するための一般的なリソースやガイドラインはありますか?

0 投票する
10 に答える
4056 参照

javascript - 処理言語とJavaScript?

私は、ブラウザ上で動作し、多くの可視化およびシミュレーション作業 (静電および電磁気の可視化、2D および 3D) を備えた包括的な教育用ソフトウェアを開発する予定です。

どの言語 ( Processing、javascript など) が私の目的に最適ですか?

0 投票する
1 に答える
2343 参照

c++ - C++ でツリーを描画する

Tree Visualization Framework などを C++ で検索しました。そして、私はそのようなものを見つけられなかったのだろうかと思いました。ツリー (または他のデータ構造) を描画するための (良い) フレームワークはありますか? C++ である必要があります。