bubbleにおいてグラフを作成する必要があり、amchartsあるいは他のチャートプラグインの使い方を教えてほしいです。。。
やりたいこと : 棒グラフを並べ、縦軸に基準線を設け、基準線をオーバーしている分だけ異なる色で表示したい
bubble公式プラグインやamchartsでは実現できておらず、amchartsにおいては使い方すらわからないといった状況です。。。
皆さんのおすすめチャート(グラフ)プラグインや、もしご存じでしたらamchartsの使い方も教えていただけると有難く思います、、、よろしくお願いします。
navi
2023 年 2 月 14 日午前 2:47
2
amchartの使い方はわからないですが、私は同様の処理を有料プラグインのChart JSで実施しております。
添付の画像の通り、基準線を面で表示し、棒グラフが基準線を超えているかを見た目で判断する方法です。
基準線を超えた分だけ異なる色で表示するというのは、かなり難しいと思うのでこのようなやり方にしました。
無料ですと、Google Chartでも同様のことができるかもしれないです。
こちらで回答になってますでしょうか。
「いいね!」 2
それです!そういう表示を求めていました!
ちなみにお伺いしたいのですが、そのグラフの表示はデータの「件数」をグラフ化することはできますか?
通常のchartプラグインや repeating group の場合、データテーブルの「値(カラム)」をグラフ化していると思います。つまり、
「売上」テーブルに「商品名(text)」、「売上合計(number)」を設定し、横軸に商品名、縦軸に売上合計、といった形です。
これを、
「購入履歴」テーブルを作成し、「購入者(user)」、「どの商品か(商品)」、「購入日時(date)」などを設定したうえで「商品」テーブルに「商品名(text)」、「価格(number)」などを設定。
この状態で、
横軸に商品名( = search for 商品 's each item’s 商品名)、縦軸に売上合計( = search for 購入履歴 's each item’s どの商品か 's 価格 :sum )といった具合です。
データではなくデータの集計をグラフ化できる形がベストですが、数件試したchartプラグインではできなかったので、、、
navi
2023 年 2 月 15 日午後 1:06
4
横軸に商品名( = search for 商品 's each item’s 商品名)、縦軸に売上合計( = search for 購入履歴 's each item’s どの商品か 's 価格 :sum )といった具合です
こちらは私が知る限りは難しいと思います。
グラフは基本的にデータを表示するものであって、中で集計することを想定していないと思います。
なので、私はページロード時に集計をして、集計テーブル(以下のイメージ)に入れて、表示させています。
・商品名
・売上合計金額
「いいね!」 2
やっぱりそうなりますか、、、
僕もいろいろ方法を考えていて、同じ方法を先ほど思いつきました。ロード時に make change to list of things で集計する方法ですね。
集計をグラフ化できないため、購入時に集計に加算するしかないかと思っていましたが、なにせ自動化省力化を目指すエンジニアからすると屈辱的で前時代的なやり方ですからね。
確かにロード時に集計を実行すればワークフローの取りこぼし防止や省略化はできそうですが、時間が心配です。ロードして集計を実行するにあたって処理時間は体感どれくらいですか??
数秒であればまあ許せるかなあといった印象です、もちろんデータ量によると思いますが。。
僕としては、テーブルも増やしたくない(データ量が増えるから)というのがあるので、集計テーブルを新規で作るのではなく商品テーブルの中にカラムで「売上合計(number)」を作ったほうがいいかなあと思っていますが、どう思いますか?
navi
2023 年 2 月 15 日午後 1:40
6
Bubbleで計算するのは結構時間かかりますね。。。
私はフロントエンジニアの知り合いが計算部分をJSで書いてくれました。
そちらであれば本当に数秒かと思います。
日付をグラフで表現する必要がないのであればこちらがベターかと思います!
商品テーブルの中にカラムで「売上合計(number)」を作ったほうがいいかなあと思っていますが、どう思いますか?
そんなに差が出るんですね!びっくりです、、
jsはjavascriptのことですかね?やはりコードをかけるほうがいいですね、、、
データ構造が以下のようなシンプルなものであれば、group byで集計関数を通せばグラフ生成時に集計できますよ。
想定テーブル
商品 販売価格 販売日
AAA 1000 2023/02/10
AAA 1000 2023/02/11
BBB 1000 2023/02/10
do search forで想定テーブルの必要な条件で検索(例えば、販売日が当月)
検索結果(more)のところでgroup byを選択し、Groupingの条件を指定(商品)
この状態で計算条件を指定できるので、販売価格を選択しsum
とすると、
商品, sum
のデータとして出力されます。
「いいね!」 2
すみません、、実際に group by を使ってみたのですが、うまく指定できず、やり方もいまいちつかめていません、、、
もう少し詳しく教えていただくことは可能でしょうか、、?
任意のテーブルを検索(条件は必要なものを設定してください)し、group by 〜で、グルーピングしたいもの(スクリーンショットの例では面談者)で抽出します。
Type of groupingはデータの型によって選択肢がいくつかありますが、商品名などであればExactになると思います。
その上で、Add a new aggregationからsum、Field to Calculate to で必要なフィールドを選択します。
(スクリーンショットは件数だけ数えているので、countになっていますが)
この検索条件をグラフのX軸、Y軸に設定し、
X軸:抽出フィールド名
Y軸:sum
と設定すると表示されると思います。
「いいね!」 4
できました!!!!!!!ありがとうございます!!!!!!!!
まじで、課金してよかったです!!超有益な情報感謝です、、、
画像の左が改善前です、テーブルを「日報」とするとRGを「 search for 日報’s each item’s どのユーザーか: unique elements 」で条件かけて、cell上のtextに「 search for 日報(どのユーザーか = current cell’s user)'s :count 」でセル上のユーザーの日報数を集計していました。この方法で集計は出せますが、ランキングにはできなかったのでマジで助かります!!!右とグラフが改善後の集計になります。
他の投稿で同じようにランキング出しで困っているのがあったので共有させていただきます!
ちなみに、これらの知識はとこで学びましたか?
bubble素人が学習するとなるとノーコードラボさんの投稿を閲覧することがほとんどです。bubbleにはまだまだ発掘しきれていない機能が多数あり、group by などがその最たる例です。
どうしたらプラスアルファの知識や機能を手にすることができるでしょうか、、、?
yukikunさんが学習できた経緯も知りたいです。。
どこで学ぶかは難しい質問ですね・・・。
自分はもともとサーバーインフラ〜フロントまで作れる状況から、高速開発のためにBubbleを使い始めた状態なので、データベース関数にあるものはBubbleにないのか?やJavascriptにある関数でBubbleにないのか?といった観点で、Bubbleの関連しそうな関数を見て試して挙動の確認をしていたりします。
また、Bubbleで検索後のアクションを指定するときなどに出てくるHelpなどのページを上からざっと読んでおくなどでしょうか。
以前より関数も増えていたりするので、たまに読み直すとこれできるようになってる!といった発見もありますよ。
「いいね!」 2
そういう経緯で技術を積み上げていたのですね、、、!それでは素人ノーコーダーには難しそうです。。
アドバイスいただいた通り、ヘルプ解説を読み込もうと思います。
定期的に選択できるアクションを試してみて、自分から学習する姿勢が大事なんですね。ありがとうございます!
ちなみに、yukikunさんのbubbleの知識を、有償で共有していただくことは可能ですか?
知っておくと強力な関数や機能、プラグインを、zoomなどでコンパクトに指導していただくような形です。
お金を払ってでも知るべき技能をyukikunさんは持っていると思います。
漠然とBubbleの知識を〜はなかなか難しいです。
強力な関数、機能も要件によって結構変わりますし。。。
NCDでBubbleのコーチングがありますが、その中で具体的な実装(要件からの実装案出しなど)の指導は担当したことがありますが、そういったニュアンスでしょうか?
yukikunさんの持てる技能のすべて!!みたいな漠然としたものでした、、
具体的な箇所ではなく、要点コンプリート版のイメージだったので、なかなか難しそうですね、、、我が儘な注文ですみません。
また疑問点が出ましたら適宜ここで質問いたしますので、またお力添えを頂けると有難いです!