* svgイメージを使用して簡単なWebページをグラフとして作成できます。このような :
<html>
<head>
<meta http-equiv='refresh' content='5'/>
<title>ESP8266 Demo</title>
<style>
body { background-color: #cccccc; font-family: Arial, Helvetica, Sans-Serif; Color: #000088; }
</style>
</head>
<body>
<h1>Hello from ESP8266!</h1>
<img src=\"/chart.svg\" />
</body>
</html>
あなたはSVGファイルを生成し、いくつかの方法にあなたのウェブサーバーのパスserver.on ("/chart.svg", drawGraph);
をマッピングすることができます。 SVG fileシンプルなテキストファイルです。
void drawGraph() {
String out = "";
char temp[100];
out += "<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" width=\"400\" height=\"150\">\n";
out += "<rect width=\"400\" height=\"150\" fill=\"rgb(250, 230, 210)\" stroke-width=\"1\" stroke=\"rgb(0, 0, 0)\" />\n";
out += "<g stroke=\"black\">\n";
int y = rand() % 130;
for (int x = 10; x < 390; x+= 10) {
int y2 = rand() % 130;
sprintf(temp, "<line x1=\"%d\" y1=\"%d\" x2=\"%d\" y2=\"%d\" stroke-width=\"1\" />\n", x, 140 - y, x + 10, 140 - y2);
out += temp;
y = y2;
}
out += "</g>\n</svg>\n";
server.send (200, "image/svg+xml", out);
}
なぜチャートライブラリはオプションではないのですか?クライアント(ブラウザ)はそれらをフェッチしますが、それはESP8266サーバーからフェッチする必要はありません。サーバー上にSVG(または同様のもの)をレンダリングするのではなく、インターネット上のどこかのCSS/JavaScriptへの参照やデータなど、あなたのサーバーが「裸の」HTMLを配信することはできませんでしたか?もちろん、[同じドメインポリシー](https://en.wikipedia.org/wiki/Same-origin_policy)の制約を念頭に置いておく必要があります。 –
"オフライン"アクセスポイントに接続されているクライアントは、インターネットから同時にライブラリをフェッチすることができますか? –
「オフライン」アクセスポイントが何であるか分かりません。インターネットに接続されていないAP(ESP8266とクライアントが接続しています)? –