お世話になります。
ある分析装置を扱っているのですが、グラフが正常に書けずに困っています。
グラフはExcelで言うところの散布図グラフ(平滑線有り/X軸対数)なのですが、特定のいくつかの点でグラフがギザギザになってしまいます。
恐らく、対数である横軸の数値設定が等間隔になっていない為に起こっている現象のようです。
幸い、横軸を自分で設定する場所を見つけましたので自分で設定しようと思ったのですが、対数の数値を幾つに設定したら良いのか分かりません。
1、横軸スケールは0.1~400.0。
2、横軸の数値は最大100点程入力する項目があります。
現在は簡易測定20点、通常50点、まれに100点で測定しています。
この条件で、対数の横軸の数値をどのように設定すれば綺麗なグラフが書けるのかご教授下さい。
※私が入社した当時からこの状態で、誰も治し方を知りません。
※装置は全て英語(作られたのは英語圏外)、日本にサポートセンターは無いと思われます。
No.1ベストアンサー
- 回答日時:
1スパン(数値が10倍になる横軸の範囲)
で考えると分かりやすいと思います。
0.1~1…1スパン目
1~10…2スパン目
10~100…3スパン目
100~1000…4スパン目
1~10の1スパンを10個の等間隔に分割する為の数値は
(方対数のメモリは1,2,3,4,5,6,7,8,9,10となっていて等間隔ではないですね。)
10^0=1
10^0.1=1.2589...
10^0.2=1.5849...
10^0.3=1.9953...
10^0.4=2.5119...
10^0.5=3.1623...
10^0.6=3.9811...
10^0.7=5.0119...
10^0.8=6.3096...
10^0.9=7.9433...
10^1=10
の位置に数値を設定すれば、方対数軸上で等間隔になります。
そうすれば、グラフも滑らかになるでしょう。
0.1~1のスパンであれば、上記の数値を1/10倍してやればいいです。
10~100のスパンであれば、上記の数値を10倍し、
100~1000のスパンであれば、上記の数値を100倍してやれば良いですね。
上の数値で測定点を設定すれば、0.1~100スパンの間で3スパンありますから測定点は10*3+1で31個、
100~400で6点入ります(上の数値を100倍すればよい)ので測定点は
37点となります。
測定点を1スパンを20分割して設定するなら
数値は
10^(n/20),n=0,1,2,3,...,20
となります。
この場合、0.1~400の測定点の数は63点になります。
測定点を1スパンを40等分割して設定するなら
数値は
10^(n/40),n=0,1,2,3,...,40
となります。
この場合、0.1~400の測定点の数は145点になります。
1スパンを30等分割するなら
数値は10^(n/30),n=0,1,2,3,...,30
となります。
この場合、0.1~400の測定点の数は109点になります。
一般に1スパンをN等分割して測定点を設定するなら
1スパンの数値は
10^(n/N),n=0,1,2,3,...,N
となります。
この計算がプログラムを組めばあっという間に出てきます。
ご回答有難うございました!
なるほどなるほど。
数学や物理、公式等が大嫌いな私でも非常に分かりやすい説明でした。
早速試してみたいと思います。
問題は、あの古い装置のDOS画面に、0.1~1.0のスケールで小数点以下2桁目を入力できるかどうかです(汗)。
No.2
- 回答日時:
> 問題は、あの古い装置のDOS画面に、0.1~1.0のスケールで小数点以下2桁目を入力できるかどうかです(汗)。
片対数で等間隔になる理論的な数値に正確にあわせなくても、切のいい数値で、だいたい均等に配置すれば、グラフは滑らかになります。
有効桁数で3桁目の四捨五入した値でも実用上は差し支えないでしょう。
正確に設定できればその方がいいかも知れませんが、ほぼ等間隔になる、至近の片対数のメモリの数値にしても良いかと思います。手で片対数にプロット点を書き込むのであれば実用上問題ないですね。計算機処理ならメモリの丁度上でなくても正確にプロットしますので、その方が良いですが…。
小数以下2桁目までの、正確な入力が難しいようですので、小数以下2桁目を四捨五入して(1スパン、10均等分割の場合で言えば)
10^0=1→1
10^0.1=1.2589...→1.3
10^0.2=1.5849...→1.6
10^0.3=1.9953...→2.0
10^0.4=2.5119...→2.5
10^0.5=3.1623...→3.2
10^0.6=3.9811...→4.0
10^0.7=5.0119...→5.0
10^0.8=6.3096...→6.3
10^0.9=7.9433...→7.9
10^1=10→10
の数値を使っても実用上差し支えないですね。
片対数方眼紙でこれらの数値のところに点をプロットしてみてください。
大体、等間隔になっていることが分かるでしょう。
目的は、データの測定間隔が1スパンの中ではじめが粗く、だんだん詰まって行く欠点をなくして、グラフが滑らかになるような数値のところでデータを測定することにあり、結果として滑らかな測定カーブをえることにあります。
その目的を正しく認識していれば、上記のような測定点の数値を、最寄の切の良い数値で代用しても実用上、何の不都合もないかと思いますね。
より性能のよい測定器に更新できた場合は、以上のことを考慮して選定すればいいですね。新しいものがコンピュータ内蔵で、等間隔に数値で測定点を設定してくれると思います。その際は、A#1で解答したような理論に基づいて、数値を自動生成して等分割をしていることでしょう。
教えていただいて有難うございました。
教えていただいてから仕事の合間に色々試行錯誤して、これまでよりかなり良いグラフにすることができました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Excel(エクセル) エクセルまたはgnuplotグラフの書き方 2 2022/11/18 15:45
- Excel(エクセル) エクセルのグラフに上下限値の横棒を表示させたい 5 2022/12/12 11:09
- その他(Microsoft Office) 折れ線グラフ、同じ項目の色 4 2022/12/23 15:46
- その他(データベース) Accessフォームにて指定のフィールドの平均値を小数点第一位で表示できない 2 2022/08/30 17:19
- 統計学 t検定について教えてください 2 2023/02/23 16:35
- Excel(エクセル) セルに特定の色が出た時だけ、式を発動させたい 4 2022/06/17 10:32
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- 統計学 確率統計の問題です。 3 2022/04/07 04:39
- その他(プログラミング・Web制作) このプログラミングをどう組みますか? Googlecolabでやってるんですが、出来る方お願いします 1 2022/07/13 10:52
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報