gpt4 book ai didi

gnuplot:如何增加图表的宽度

转载 作者:行者123 更新时间:2023-12-02 04:49:26 26 4
gpt4 key购买 nike

我正在使用“gnuplot”绘制带有点的线图:

set style data linespoints
set xlabel "number"

set ylabel "Dollars"
set yrange [0:250]

如何增加图表的宽度,以便当我有更多“x”时,我希望我的图表更多是矩形而不是正方形?

如何增加“y 轴”的间隔?现在,它只是在 y 轴上每 50 画一个标记?

最佳答案

听起来您希望输出的大小能够根据绘制的数据动态调整。这是一个执行此操作的脚本:

#!/usr/bin/env gnuplot

# don't make any output just yet
set terminal unknown

# plot the data file to get information on ranges
plot 'data.dat' title 'My Moneys'

# span of data in x and y
xspan = GPVAL_DATA_X_MAX - GPVAL_DATA_X_MIN
yspan = GPVAL_DATA_Y_MAX - GPVAL_DATA_Y_MIN

# define the values in x and y you want to be one 'equivalent:'
# that is, xequiv units in x and yequiv units in y will make a square plot
xequiv = 100
yequiv = 250

# aspect ratio of plot
ar = yspan/xspan * xequiv/yequiv

# dimension of plot in x and y (pixels)
# for constant height make ydim constant
ydim = 200
xdim = 200/ar

# set the y tic interval
set ytics 100

# set the x and y ranges
set xrange [GPVAL_DATA_X_MIN:GPVAL_DATA_X_MAX]
set yrange [GPVAL_DATA_Y_MIN:GPVAL_DATA_Y_MAX]

# set the labels
set title 'Dollars in buckets'
set xlabel 'number'
set ylabel 'Dollars'

set terminal png size xdim,ydim
set output 'test.png'
set size ratio ar

set style data linespoints

replot

对于这些示例数据:

0 50
50 150
100 400
150 500
200 300

我得到以下情节:

enter image description here

它大约是正方形,正如它应该的那样(我定义 x 中的 100 个单位等于 y 中的 250 个单位,并且数据跨越范围 [(0,200),(50,500)])。如果我添加另一个数据点 (400,300),输出文件会更宽,正如预期的那样:

enter image description here

要回答您的其他问题,您可以这样设置 y tic 增量:

set ytics <INCREMENT>

上面的脚本给出了一个示例。

关于gnuplot:如何增加图表的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13869439/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com