2015/05/12

Excel バージョンと高精細チャート

LibreOffice の Calc の散布図チャートは,やはり,OpenOffice 同様にプアだった。いつ頃から,MSチャートが高精細表示になったのか調べてみた。

Windows プログラミングを始めたの VB4 だった。サードパーティのコントロールを用い,確か最大 1600 サンプル程度だった(総サンプルだから,6本の折れ線を引いたら各線のサンプル数は1/6になる)。それが,フリーの VB2010 Express になると,その制限がなくなった。Slip21 のリアルタイムチャートにMSチャートを使用して,6万を超えるサンプルのチャートをリアルタイムにフリーズせずに使用できた。その頃は,リモートPCをWindows 95 からXPのマルチタスク32ビットOSに変更したおかげだと思っていたけど,何かと制約の大きかった16ビット GDI は 32ビトになり実際は,GUI 環境の根幹を地味に変えていたのだろうと思う。ユーザから窓は同じようにみえて,コードは全く別の32ビット GDI に替わったからだ。Windows 98 プログラミングしていたとき,統御不能の GDI エラーに悩まされていた事を思い出した。そんなエラーは今では,全く起きなくなった。

VB2010 Express は .NET Framewrok4 の環境で動作する。MSチャートはVB4 時代のチャート作成パラメタとは全く異なる。よくわからない数多くのパラメタ(プロパティ)があって,閉口させられた。この時,描画エンジン設定を新しい物に変えたのであろう。一方,OpenOffice は元来,Linux に由来するから,グラフィックコントローラを制御する描画エンジンは別の機関が開発している物を採用しているし,高精細描画を求めるユーザも少ないだろう。というのはゲームエンジンを開発するようなプログラマはOSそのものをカスタマイズして,描画エンジンの選択カスタマイズ,さらにいろんな画像アプリを駆使するような人達だから,今のLinux の汎用ユーザは中途半端になるのだろう。高精細グラフィック不要のサーバが中心になる。

私が昔,使用した事のある Excel97 は,高精細チャートの出力はできないのではないかと思う。当時,私は,実験のチャートはもっぱら,Origin を使用していた。Excel 2007 は高精細だと,家人のPCで確認した。Excel 2003 はどうだろうか。MSDN の説明によれば,MSチャートは .NET Framework4 以降とされているが,Windows XP かつ .NET Framework 3.5 環境下で Slip21 のリアルタイムチャートが不具合なく動作しているから事実と異なる。Excel 2003 のシステム要件をみると,800x600 以上の解像度となっている。高精細チャートを出力しないかもしれない。

事務系の営業レポートとか大企業のプレゼンをみると,棒グラフで済むようなデータ点数しかない。OpenOffice とか LibreOffice Calc のプアなチャート描画も至って当然か。逆に Microsoft が何故,さして必要性のないと思われる高精細のMSチャートを開発したか。科学技術以外に,どんな分野で波形を表示させる必要があるだろうか。やはり,株価チャートとかだろうか。FX取引もチャートが欠かせないだろう。一般人がチャートを見ながら,投機する。合衆国農民なら,シカゴの商品取引相場チャートをみて,自分の作物を売る。日本の農民のように出荷を農協まかせにできない。そんな時代を見越して,MSチャートを開発したとしたら,凄いと言うか,恐ろしい。ちなみに,合衆国の小学生は小3ないし小4で市場取引を習う。

Java のチャートに関して検索してみたが,チャートはライブラリがあって作成できるものの,高精細かどうかは不明だ。タブレットの表示が高精細化しているのに,これに対応したチャートを Java は用意していないみたいだ。チャートエンジンのライブラリを各大手が独自に開発しているのだろう。

参考
Microsoft Office 2003 のシステム要件
関連記事

コメント

非公開コメント