2

次のようなデータがあります。

0 FRANCK -0.46
0 JUSSE -1.41
1 JUSSE -0.13
1 FRANCK -2.10

3D プロットを実行したいのですが、カテゴリ (またはラベル) を表示する必要があります。

splot "map.gnu" using 1:2:3:yticlabels(2) with points palette pointsize 3 pointtype 7

これは私にエラーを与えます:

 syntax error near unexpected token `('
4

2 に答える 2

1

Y 値の列も指定する必要があります。gnuplot は、同じ文字列の座標を自動生成できません。しかし、4.6.4 では、コードをテストしてもエラーは発生しませんwarning: No usable data in this plot to auto-scale axis range. All points x value undefined。形式のファイルを提供する場合

0 0 FRANCK -0.46
0 1 JUSSE -1.41
1 1 JUSSE -0.13
1 0 FRANCK -2.10

とプロット

splot "map.gnu" u 1:2:4:yticlabels(3) w p palette ps 3 pt 7

4.6.4 で正常に動作する場合。

…元のファイルでは動作しないと言いましたか? それは完全に真実ではありません;)

list = ''
index(w) = words(substr(list, 0, strstrt(list, w)-1))
add_label(d) = (strstrt(list, d) == 0 ? list=list.' '.d : '')

splot 'map.gnu' using (d='|'.strcol(2).'|', add_label(d), $1):(index(d)):3:ytic(2) w p palette ps 3 pt 7

説明については、 Gnuplotに対する私の回答を参照してください。y 軸にテキストを含むグラフをプロットしています。4.6.4 の結果:

ここに画像の説明を入力

leftytics のアラインメントをorで制御できないことを見てきましたrightoffsetビュー角度を定義したら、 を使用して目盛りラベルの位置を修正する必要があります。

于 2014-06-03T19:05:36.900 に答える