0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

JQueryでガラケー向けにグラフを出す方法

Last updated at Posted at 2021-12-30

結構古いサイトに対する追加改修で、リアルタイムで変動するデータを折線グラフ化して見せたいという要望がありました

とりあえずJQueryのライブラリflotを使って実現
https://www.flotcharts.org/

ただし、一部ユーザがガラケーで、そのユーザ向けにどうしても対応したいとの相談。
今更ガラケー対応ですか?と思いつつ、お金をいただけるのであれば調べましょう

まずガラケーなのでJQueryはまともに動かない

なのでグラフを画像化して表示すればよさそうなことはすぐに思いついたが、個人ごとにグラフデータが異なる仕様。しかも結構リアルタイムなグラフ情報が欲しいのです。

調べた挙句PhantomJSのスクリーンショット機能を使ってグラフをPNG画像にすることで対応した

PhantomJSというのはJSで動くスクリプトブラウザです。
http://phantomjs.org/

このブラウザ経由させるとアクセスしたページを画像に変換できるので、flotで描画されたグラフをPNG画像にしてやることで解決

つまりどうゆうことかと言うと、

1・ガラケーがPHPページにアクセス
2・PHPがサーバ内部でPhantomJSをキック
3・PhantomJSがflotのグラフページにアクセス
4・グラフ画像生成
5・ガラケー向けのHTMLレスポンスに生成グラフ画像のイメージタグを記載

但し画質は悪く、一部AUの端末でPNGが使えなかったので、GIF画像でも描画することにしたが、GIFはさらに画質が悪いというスパイラルに。

お客様と相談した結果、折線グラフを超シンプルにすることで対応

こんな感じ(本物は貼れないのでイメージ図です)
スクリーンショット 2021-12-30 16.50.27.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?