時系列データを視覚化する方法は?


8

2Dプロットとして視覚化したい時系列データがあります。

入力はISO-date-formatとスペースで区切られた値で、1行に1レコードです。

2010-10-21 23
2010-10-22 32
etc.

出力は見栄えの良い2Dプロットになるはずです。基本的な要件:

  • X11ウィンドウ(プレビューとして)およびpngファイルへの出力
  • x軸は日付を理解し、データを自然にスケーリングする必要があります。たとえば、3日間のギャップは1日間のギャップの3倍でなければなりません。
  • スクリプトから呼び出し可能である必要があります
  • 素晴らしい出力と使いやすい

ボーナス:

  • svg出力

私が試してみましたgnuplot-それはいくつかの日付のサポートがあります:

gnuplot> set xdata time
gnuplot> set timefmt "%Y-%m-%d"
gnuplot> plot "test.dat" using 1:2

しかし、私はgnuplotにいくつか問題があります:

  • デフォルト設定では、プロットは非常に醜く見えます
  • マニュアルで何かを見つけることは困難です-たとえば、点をプロットするとき、デフォルトの「+」記号の代わりに小さな塗りつぶされた円をどのように使用しますか?
  • gnuplotシェルは首の痛みです-それはreadlineを使用しません、それは壊れています、コマンド補完は冗談です、viショートカットを有効にする方法がわかりません-またはそれらがサポートされている場合、逆検索についてはどうですか

したがって、私の質問:時系列データを視覚化するための代替手段は何ですか?

または私はgnuplotの問題を過大評価していますか?

回答:


5

RRDToolの存在目的はすべて、時系列データをプロットすることですが、これは主に自動化されたグラフ化を目的としており、ニーズに最適ではない場合があります。

それは言った:

  • PNGまたはSVGで出力できますが、プレビュー機能はありません。
  • タイムスケーリングが組み込まれています。
  • 簡単にスクリプト化(コマンドラインアクセスまたは多くのスクリプト言語のライブラリ)。
  • 出力はかなりまともに見えるようにすることができます。

RRDToolグラフ


面白そうに聞こえますが、プレビューが表示されないのはそれほど悪いことではありません。PNGを生成し、画像ビューアを並べて使用するだけでも問題ありません。このツールの簡単なコマンドライン呼び出しの例を挙げていただけますか?
maxschlepzig


基本的に、rrdtool create ...一度実行すると、RRDデータベースをセットアップし、rrdtool update ...データごとに1 回実行してrrdtool graph ...、グラフを生成します。
Kowh、2011年

12

RはGnuplotよりもこの種の点で優れています。

  1. これは、CおよびFortran互換の拡張APIを備えた完全なプログラミング環境です。お使いのコンピュータでできることなら、Rでそれを行うことができます。

  2. 多くの人がすでにCRANの一般的な問題の解決策であるComprehensive R Archive Networkに貢献しています。このタスクに役立つzooggplot2パッケージが見つかるかもしれません。

  3. あります多くの書籍での時系列分析R一般的には

Rはあなたが求めたすべてを持っています:

  • X11、PNG、または(アドオン付き)SVGへの出力

  • 充填されたプロット点のためのサークル:パスpch=19またはpch=20PAR()または点() 。他にも多くの定義済みのプロットポイントシンボルがあり、Unicodeをサポートするフォントを使用している場合はすべてのUnicodeがあります。

  • 時間対応チャート:組み込みチャートに必要なスケーリングがない場合、Rのプロットプリミティブで必要なものを構築できます

  • スクリプトから呼び出し可能:#!/usr/bin/RscriptRプログラムファイルでシバン行を使用

  • すてきで便利:必要に応じてGUIフロントエンドがあり、好きではない場合、デフォルトのコマンド駆動環境には、多くの組み込み操作のRソースコードを表示する機能など、多くの優れた機能があります。システムがどのように組み立てられているかを学びます。(はい、Rの多くはRで書かれています!)

  • プリティプロット:RがCairoに対してビルドされている場合、アンチエイリアスはデフォルトです。これは、Linuxでの最近のビルドの場合と同じです。古いバージョンのRにはAAが組み込まれていない場合があります。Rの機能を理解するために、少し時間をかけた場合は、以下を確認してください。

    (それを説明する記事については画像をクリックしてください。)

gnuplotコマンドラインに関しては、GNU readline、BSD libedit、またはフォールバックとしてカスタムの組み込みコマンドライン編集スキームをサポートするようにビルドできます。(これはマニュアルの p.20によると)。あるマシンにはgnuplot 3.7があり、別のマシンには4.0があり、どちらもreadlineでビルドされています。あなたのバイナリはこれらなしでビルドされていますか?


私はすべての統計と仕事でのプロットにRを使い始めました、それは素晴らしいです!
jsbillings 2011年

libeditに関するヒント。まあ、私はUbuntu 10.04でデフォルトのgnuplotパッケージを使用しています。少なくともviモードをサポートしていると思われるlibeditにリンクしているようです。しかし、コマンド補完は最小限(ファイル名に対してのみ機能)であり、gnuplotコマンドでは機能しません。つまり、基本的には役に立ちません(これはlibeditのせいではありません)。
maxschlepzig 2011年

基本的なプロットを生成するための簡単なサンプルRセッションを追加できますか(上記のスケッチファイルを読み取り、プロット関数を発行すると思います)。
maxschlepzig '29年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.