plotlyの結果をiframeを使ってphp(web上)で表示したい
pythonとplotlyを使い、plotlyで描いた結果(図)をphpで書いているwebsite上で表示したいと今努力しております。しかし、困ったことにうまく結果がphp上で表示されませんので、改良方法を教えていただけたら幸いです。
先にpythonとphpのプログラムを記します。
その下に困っている点を質問を説明させていただきます。
1. python用のプログラム (plotly.test.py)
import plotly
from plotly.graph_objs import Scatter, Layout
plotly.offline.plot({
"data": [Scatter(x=[1, 2, 3, 4], y=[4, 3, 2, 1])],
"layout": Layout(title="hello world")
})
2. php用のプログラム(実際にはhtmlしか使っておりません。)(plotly_test.display.php)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<div class="plotly_test">
<iframe src="temp-plot.html" seamlesss="seamless"></iframe><br>
</div>
</html>
行っていることは、
python plotly.test.py
を動かし、temp-plot.htmlを作成しいています。
作成されたhtmlを上記のphpを使って、web上で表示するだけの簡単なプログラムです。
ここで問題なのは、php上で表示された図がつぶれてしまい、うまく表示されません。
plotlyを使っていますので、図自体はinteractiveに表現されていますので、図を拡大しましたが、線などすべて消えてしまっている状態です。
temp-plot.htmlだけを表示しますと、正しく表示されますので、phpのiframeで何か問題が発生しているのではないかと考えています。
最終的には、実際のtemp-plot.htmlで表示される図の縮小版(25%縮小図)をweb上で表示したいだけなのですが、そのようなことは可能でしょうか?
iframeでwidthやheightを使いますと、図全体のサイズを変えることはできます。しかし、図を正しく表示するためには、サイズを大きくする必要があります。
(わかりにくい説明で申し訳ないです。)
具体的な例では、iframe内のwidth=760やheight=1000の状態ですと、正しく図は表示されます。
しかし、図が大きい過ぎます。
これを(例えばwidth=180やheight=250)小さいサイズで、図を正しく表示したいです。
どうしても自分では解けなく、困っておりましたので、ここに質問させていただきました。
もし解決方法をお知りでしたら、ご教授をお願いします。
よろしくお願いします。