タグ付けされた質問 「visualization」

数値データのグラフ化と表示に関する質問

14
科学データとグラフの公開に推奨されるソフトウェアとワークフローはどれですか?
いくつかのデータポイントの単純なプロットから、詳細なスタイル、数学的な組版、「プロ品質」を備えた出版物レベルのグラフィックの作成まで、どのソフトウェアが優れたワークフローを提供しますか? これは、Davidの質問に関連しています(どの属性がフィギュアをプロフェッショナルな品質にしますか?)。しかし、焦点は属性ではなく、そこに到達するためのソフトウェアまたは一般的なワークフローです。Gnuplot、Origin、Matplotlib、TikZ / PGFplot、Qtiplotなどのプログラムで表面的な経験がありますが、データ分析と素敵な数値を同時に行うのはかなり難しいようです。 これを可能にするソフトウェアはありますか、それともパッケージの1つをさらに掘り下げる必要がありますか? 編集:私の現在のワークフローはさまざまなコンポーネントを組み合わせたものであり、多少なりとも連携しますが、全体としてはあまり効率的ではなく、これは大学の研究室の多くの科学者にとって典型的だと思います。通常、実験から出版物までのチェーンは次のとおりです。 実験データを取得します(通常はASCII形式ですが、ヘッダー、コメント、列数などのレイアウトが異なります) Origin、Gnuplot、または20年前に書かれた難解なプロットプログラムで何も問題がなかったかどうかを確認するためのデータのクイックプロット。 データのより詳細な分析:バックグラウンドの寄与の減算、依存関係と相関の分析、理論モデルとの適合。多くの科学者がこのタスクにOriginを使用していますが、MatlabやPython / Scipy / Numpyの使用が増えています。 専門的な人物を作成するには、ジャーナルのガイドラインに合わせて調整し、数学的な組版と一般的な編集を行います。現時点ではOriginを使用していますが、いくつかの欠点があります(ちょうど0.5ptの線幅を取得しようとすると、不可能です)。図の結合/研磨には、主にAdobe Illustratorを使用します。これは、PDFドキュメントのim- /エクスポートを適切に処理できるためです。ただし、図ごとに2つのステップを実行する必要はありません。 最後にどのように見えるかの例を追加しました(これはほとんど手作業で変更することによって作成されているため、すべてが苦痛であり、すべての要素の線幅を設定するためのインターフェースを提供するものは素晴らしいでしょう):

6
フィギュアを「プロフェッショナル品質」にする属性は何ですか?
私は、ORIGINで作成されたプロットは洗練された「プロフェッショナル」に見える傾向があるのに対し、Mathematicaで作成されたプロットはそうではないと言うのを聞いたことがあります。しかし、ほとんどのプロット作成プログラムは非常に構成可能であり、目盛りの位置とラベル付け、フォントと色の選択、ラベルの配置などの適切な設定により、Mathematicaで図を作成できるはずです。 / matplotlib / Gnuplot / etc。それはORIGINから来るものと同じように見えます。しかし、この文脈で人物が「プロフェッショナル」であるとはどういう意味ですか? 言い換えると、私の目標が科学論文に含めるために可能な限り最高の外観の数字を作成することである場合、その目標に向けて一般的にどのような設計選択が推奨されますか?明らかに、適切な種類のプロット、たとえば棒グラフ対散布図、線形対対数スケールを選択する必要がありますが、これらは使用するプロットプログラムに関係なく常に考えられる選択肢です。私が普段考えていないことにもっと興味があります。これは通常、いくつかのプロッティングプログラムのデフォルトに従って設定されますが、プロットの見た目を改善するために変更できます。

6
非常に大きなリンクグラフの視覚化
非常に大きな有向リンクグラフを視覚化するツールを探しています。現在、〜2,000,000のノードと〜1000万のエッジがあります。私はいくつかの異なることを試しましたが、ほとんどの場合、10万ノードのグラフを作成するのにも数時間かかります 私が試したこと: gephiで1日過ごしましたが、80Kノードを追加するのに約1時間かかり、アプリケーションはほとんど役に立たなくなります。 助言がありますか? インタラクティブな視覚化はプラスになります。

4
(適応?)関数プロットのアルゴリズム
私は、特異性を持っているかもしれないし、持っていないかもしれない関数のために標準的な2Dグラフを描くアルゴリズムを探しています。目的は「Mini-CAS」を作成することです。そのため、ユーザーがグラフ化する機能のタイプについての先験的な知識はありません。 この問題は非常に古いので、文献には標準的なアルゴリズムがいくつかあるはずです。かつては、Googleを介して参照を見つけることにあまり成功していませんでした。 1つの興味深いアルゴリズム、つまり「Adaptive function plotting」という名前の「YACAS-アルゴリズムの本」からのアルゴリズムを見つけました 。 要するに: 標準のアルゴリズムはありますか? 既知のプロット困難な関数のテストスイートはありますか? 読むべき興味深い論文は何ですか?


3

1
不連続ガラーキン/有限要素データの視覚化
ParaView内で不連続ガラーキン(DG)アプローチを使用して得られたシミュレーション結果を視覚化したいと思います。有限体積法と同様に、問題領域は立方体のセル(「要素」)に分割されます。有限体積法とは異なり、各セル内には解ベクトル値が1つだけではありませんが、各セルには複数のガウス積分点で解が含まれます。あなたはあなたは\mathbf{u}あなたはあなたは\mathbf{u} 私の質問は、ParaView / VTKを使用してそのようなデータを効率的に視覚化した経験があるかどうか、およびVTKでデータを表すために選択したアプローチです。考えられるいくつかの方法が思い浮かびますが、どれが最も有望かはわかりません。 (1)ボクセルを 使用する各統合ポイントに1つのボクセルを使用します。 Pro:標準のVTK非構造化セルタイプで動作するすべてのプラグインは、何も変更せずに引き続き動作します。欠点 :統合ポイントが均等に分散されていないため、頂点の正しい位置を見つけるのが難しい場合があります。また、DGフレームワークでは不連続なソリューションが許可されるため、セル表面でソリューションを2回定義できます。また、階層情報(要素に分割されたドメイン、各要素に複数のポイントが含まれる)も失われます。 (2)多角形の 使用統合ポイントごとに1つの頂点を使用します。利点 :実装が最も簡単で、異なるソリューションを使用して同じ場所に複数のポイントを簡単に指定できます。欠点 :データを「セル」として視覚化する機能が失われ、さらに上記と同じ欠点があります。 (3)VTK直交方式を 使用する直交方式の組み込みサポートを使用します。 利点:むしろ簡単な実装で、元のソリューションのすべての関係とプロパティを保持します。 欠点:これは完全に新しいセルタイプであるため、既存のプラグインの多く(ほとんど)は機能しなくなり、おそらく書き直さなければならないでしょう。

4
同じ構造を持つ2つの異なるVTKファイルに保存された2つのフィールド間の数値の差を計算するにはどうすればよいですか?
構造化されたグリッド形式の2つのVTKファイルがあるとします。構造化されたグリッドは同じであり(同じ順序で同じポイントのリストを持っています)、各VTKファイルに「Phi」と呼ばれるフィールドがあります。同じ構造のグリッドを使用して、3番目のVTKファイルを作成し、最初のVTKファイルのPhiと2番目のVTKファイルのPhiの差であるフィールドをプロットします。 これを手動で行う方法を知っています。2つのVTKファイルの未加工テキストを解析し、データを配列にコピーし、一方の配列を他方から減算し、正しい形式のデータを新しいファイルにダンプできます。この差を計算してVTKにエクスポートするより良い方法はありますか?Python、またはVisItやParaviewのような視覚化ソフトウェアのソリューションは、C ++のようなコンパイルされた言語を使用するよりも望ましいでしょう。 この差を計算する目的は、PDEの解を計算するためのさまざまな数値手法を比較することです。同じソフトウェアを使用してソリューションを生成しているため、生成する各ファイルでフィールドPhiを除くすべてのデータが同じになることを保証できます。

4
分子エディター/ビジュアライザーの作成:オブジェクト指向プログラミング、データ構造、分子
私はプログラミングが初めてで、最初の大きな問題を解決し、最初の大きなプログラムを作成しようとしています。私は学習するコードのオープンソースの例を探しましたが、これまでのところ、私が完全に理解していない言語、または関連するがまだあまりにも遠い言語のコードのみを見つけました。ここでいくつかの概念的な手順を実行するのに問題があります。 私は、小さな有機分子を構築し、修正し、後で表現するための簡単なソフトウェアを作りたいです。これは主に学習課題です。ユーザーは、SMILES文字列を指定するか、スターター分子の基本セットから選択し、グラフィカルに、またはテキスト入力構文を介してその分子を構築できます。しかし、私はまだ複雑さのその時点ではありません。クラス/オブジェクトを作成して分子を保存する方法を完全に理解することすらできません。だから、私の質問は簡潔に:すべてのレベルの情報を保持しながら分子を構築するためにクラス/オブジェクトをどのように使用し、どのオブジェクトの属性としてどのデータ構造を使用する必要がありますか?また、オブジェクトを他のオブジェクトの属性にすることはできますか? これまでの私の思考の流れは次のとおりです。「分子」クラス、次に「アトム」クラス/サブクラス、「ボンド」サブクラス、そしておそらく「FunctionalGroup」サブクラスも考えていました。始めるには良い場所のように思えますが、OOPを誤解しているのかもしれませんが、これは悪いことです。しかし、その後、私の問題は本当に混乱します(私にとって)。これらの概念/アイデア/クラスはすべてありますが、分子を表現するためにどのデータ構造が必要かを完全には把握していません。原子のリストがあればいいでしょう。そのリストはAtomオブジェクトのリストですか?接続性を保存する方法も必要です。2Dマトリックスは、結合位置がマトリックス位置の整数であるため、良いアイデアのようです。 この時点で、私は仕事に圧倒され始めています。これまでにやっていることはすべて理にかなっていますか?この上に表示/描画アスペクトを追加することは、これらの多くのことを書き直し/再作業する必要があることを意味するかもしれませんが、少なくとも関連するデータで分子を保存してからアクセスできるポイントに到達しようとしていますチェック/変更するデータ。Pythonでこれを行うことを考えていたので、コード/クラスはおそらく次のようになります:http : //pastebin.com/uUi1BMzr おそらくこれはStackOverflowのプログラミングの質問かもしれませんが、ここに行くのに十分具体的だと思いました。私が概念的な失敗をした場所を指摘しただけでも、どんな援助も大歓迎です。前もって感謝します。

2
タンパク質の表現の「漫画」タイプを数学的にどのように説明できますか?
タンパク質は通常、漫画の形で表され、βシートが矢印、αヘリックスがコイルになります。 私は、この表現の構築を説明する参照がどこかにあるのだろうか?つまり、これらのグラフィックスを構築するためにどの数学オブジェクトが使用され、どの原子/方向に構築されますか?

1
四分木および八分木グリッドの視覚化
いわゆるクワッドツリーおよびオクツリーグリッドは、適応メッシュリファインメントを必要とするアプリケーションにとって非常に魅力的です。たとえば、GerrisやParameshで使用されています。そのようなグリッドの適切なファイル形式と、サポートする視覚化ソフトウェアを知っている人はいますか?Gerris FAQのこの回答も参照してください。私が現在気付いている唯一の潜在的な候補はVTK HyperOctreeクラスですが、ドキュメントはほとんどないようです。 メッシュの具体的な例として、それぞれがセルを含む個のボックスで構成される、まばらに洗練された八分木グリッドを考えてみましょう。Visit / Paraviewでの私の現在の戦略は次のとおりです。10410410^48×8×8=5128×8×8=5128 \times 8 \times 8=512 グリッドを非構造化VTKファイルとして書き込みます。これは、大規模なデータセットではコストがかかり、クワッド/オクツリーの「構造化」を利用しません。 ツリー内の隣接する「ボックス」をより大きなブロックに集め、ブロック構造のグリッドを記述します。これにはかなりの追加コードが含まれ、クワッド/オクツリーに埋め込まれた接続情報が失われます。 更新現在、octreeグリッドを直接書き込んで視覚化するための実行可能な形式がない場合は、octreeをブロック構造のグリッドとして書き込むために使用できるファイル形式について提案をいただければ幸いです。理想的には、このフォーマット: 定義/実装が比較的シンプルで、理想的にはオープンソースで、C / Fortranと互換性があります。 多数のグリッドブロック(1000以上など)を効率的に処理できます。 特に細分割境界でグリッドブロックの接続を簡単に指定できます。 私は現在、この目的でSiloを使用していますが、上記の3つの点でより良いスコア(より小さく、より速く、より単純)を探しています。

3
パフォーマンスの問題を検索してイベントデータを視覚化する方法
高度に非同期の通信パターンでMPIアプリケーションを最適化しようとしています。各ランクには計算するもののリストがあり、入力または出力が異なるランクにある場合は、必要に応じてメッセージを送信します。さらに、各ランクはスレッド化されています(現在、1つの通信スレッドと5つのワーカー)。 コードのさまざまなパフォーマンスクリティカルな部分にタイマーを使用してコードをインストルメント化しました。これにより、各スレッドの(開始、終了、タイプ)トリプルのリストが表示されます。横軸を時間、縦軸をランクとスレッド、そして各スレッドが現在何をしているかを示す色で、わかりやすい方法でプロットすると、6スレッド/ランクの16ランクで次のような画像が得られます。 私の質問は、パフォーマンスの問題を突き止めるのに役立つこのデータを視覚化する他の方法は何ですか?誰かが非同期アプリケーションのプロファイリングに使用するお気に入りのタイプのプロットを持っていますか? このデータセットは、データフロー構造を認識していないという点で制限されていますが、より複雑なものを収集する前に、できる限り多くの洞察を得たいと思います。 誰もが見回したい場合に備えて、非圧縮画像がここにあります(通常のルートでアップロードできませんでした)。残念ながら、Firefoxは有効であると私が信じているにもかかわらず、それを受け入れません。おそらくそれが単に大きすぎるためです。

3
2次テンソル場可視化ソフトウェア
テンソル可視化ソフトウェアで利用可能な概要はありますか? 私の個人的な好みは: 無料で十分に文書化されたソフトウェアであり、さまざまな物理的な2次(または高次)テンソルフィールドの視覚化手法を提供します。 興味のあるいくつかのモジュール ハイパーストリームライン(固有ベクトル統合法) 固有ベクトルではなく、方向としての測地線 トポロジー法(例えば、等しい固有値、つまり縮退点の処理、有限ルピノフ指数の抽出) テンソル楕円体 テクスチャベースの視覚化(HyperLIC、物理ベースの方法) 非対称テンソルフィールドの処理(テンソルフィールドの対称部分と反対称部分への分解、および結果の可視化の再接着、または直接的なアプローチ) テンソルフィールドの物理特性に応じて、データを可視化するためにさまざまな方法が必要です。 Mayaviについては知っていますが、テンソルモジュールに関するドキュメントはほとんどなく、モジュールはハイパーストリームライン(単数)の可視化に限定されています。GUIはバグが多く、スクリプトオプションは制限されているようです。 テンソル場の可視化には非常に悲惨な選択があるようです。

1
メッシュの値が与えられた場合、レベルセットの等高線を効率的に構築するためにどのアルゴリズムを使用できますか?
メッシュ、面、エッジE、および頂点Vがあり、事前定義されたレベルセットコンターのリストがあります。FFFEEEVVV 最も効率的な方法で輪郭を作成するために使用できるアルゴリズムは何ですか? 輪郭のプロットは上に示されています。同じ色の線は同じ値を持っています。zzz

4
データベースを使用して大量の結果を処理する必要がありますか?
バックグラウンド: 現在、大量のパラメータ変動実験を行っています。これらはnumpyを使用してPython 2.6以降で実行されています。これらの実験の実行には約2週間かかります。 大まかに私は3つのパラメーター(独立変数)を値の範囲で変化させています。さらに6つの独立変数を修正します(今のところ)4つの従属変数についてレポートしています。 私が変更しているパラメーターの1つは、いくつかのプロセス(およびコンピューター)に分散されています。これらの各パラメーターcsvについて、すべての変数(独立、固定、依存を含む)の値を各行に含む個別のファイルを生成します。すべてのバリエーションで、約80,000行のデータが生成されると予想されます ほとんどの場合、私は従属変数の1つの値だけを見ていますが、予期しないことが起こったときに何が起こっているかを説明できるので、他の変数はそのままにしておきます。 この実験の以前のバージョンでは、2つのパラメーター(それぞれ2つの値のみ)で変化していcsvましたが、このファイルをスプレッドシートプログラムにコピーアンドペーストし、一連のコピーペーストを実行して、興味のある従属変数のみのテーブルを作成しました。 。MS-Excelで厄介なことをして数式で並べ替えること。これは、私が持っていた6つの実験結果セットにとって十分な苦痛でした。この実行が完了するまでに、結果が2桁増えることになります。 質問: 一度終わったら、csvファイルのすべての結果をデータベースにダンプし、興味のある部分を照会できると考えていました。次に、それらの結果を取り、分析のためにスプレッドシートに入れます。グラフを作成し、制御結果に関連するスコアを見つけるなど 私は正しい線に沿って考えていますか?(これは人々がすることですか?) 私のデータベースfooは、MS-Accessを使用していて良かったとしても、最近はかなり錆びています。これにもMS-Accessを使うつもりでした。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.