2017-08-24 9 views
1

データファイルがあります.Y軸のデータは3番目の列にあります。私は、x1の最初の列とx2の2番目の列で与えられたスケールを持たせたいと思います。標準的な方法は、次のようになります。データポイントから2 x軸のgnuplot

plot data u 1:2 axes x1y1, data u 1:3 x2y1 

しかし、これは避けたい2つのプロットを作成します。もちろん、色や他の汚いトリックで上記の作業をすることができます。プロットコード全体が非常に面倒になります。別の良い方法は、hereとしてmultiplotを使用することです。しかし、実際のx2軸を持ちたいので、これは本当に私の目標ではありません。

もう一つの方法はx2rangeを設定することでしたが、それはソースファイルに行って、minとmaxを計算すること、またはgnuplot(これは単純な時間の無駄な感じです) 。

上記のものよりもシンプルでエレガントな方法がありますか? (私は特に短く書くための解決策を心配していますが、プロットはいくつかの(> 5)データセットで構成されていますので、各データセットを2回プロットするのを避けたいです。

+2

いくつかのデータと、達成したいプロットのイラストを教えてください。私はあなたのサンプル 'plot'コマンドで混乱しています - それは決して第2列をx2軸に関連付けません。なぜ2つのプロットが必要ないのですか? x軸とx2軸との間に静的でデータに依存しない関係が必要な場合は、[set link](https://stackoverflow.com/a/26737333/7932936)を使用できます。 – user8153

答えて

0

これは、 、あなたはX2のxと華氏で摂氏と、このデータをプロットすることができます例として

set xtics nomirror 
set xrange [:] noextend 
set x2tics 
set x2range [:] noextend 
plot '/tmp/f.gdat' u 1:3 w l, '' u 2:(1/0) ax x2y1 

:X2値として2列目との再スキャンファイルが、この2番目のプロットのためにのみ無効y値にはgnuplotを伝える

カラム2はアフィンである場合、これが唯一の賢明であろうこと
0  32  0 
30  86  1 
60  140  2 
90  194  3 

注アライン関係が分かっている場合は、set linkを使用する方がはるかに優れています。

関連する問題