【问题标题】:Reverse abscissa/ordinate axis in wxdraw2d or wxplot2d wxmaxima在 wxdraw2d 或 wxplot2d wxmaxima 中反转横坐标/纵坐标轴
【发布时间】:2021-12-29 10:36:01
【问题描述】:

默认情况下,draw/plot 函数按升序(从下到上)绘制 y 轴值。换句话说,-ve 值位于图的底部,+ve 值位于原点上方(朝向图的顶部)。我们可以为单个轴或两者都反转(参见附图)这种行为吗?

【问题讨论】:

  • 我尝试遵循下面 DanielTuzes 的建议,以某种方式申请 set yrange reverseset yrange [high:low],但我无法让它工作。有一个绘图选项gnuplot_postamble,它应该提供在其他自动生成的东西之后输出的 Gnuplot 选项,但我发现,在查看示例输出时,set yrange 是在gnuplot_postamble 指定的任何内容之后生成的,所以gnuplot_postamble 没有影响yrange。这可能是gnuplot_postamble 中的一个错误。
  • 此时我的建议是set_plot_option([plot_format, gnuplot]),这样所有的Gnuplot命令都输出到一个文件中(否则它使用管道),然后复制并编辑生成的Gnuplot文件以应用set yrange为需要。 (plot2d 报告其输出文件的名称,因此您可以找到 Gnuplot 输出。)

标签: gnuplot maxima wxmaxima


【解决方案1】:

在 gnuplot 中可以通过 set xrange reverseset yrange reverse 传递,但是 wxmaxima 没有为 gnuplot 提供完整的接口,但是,似乎可以直接访问。来自文档:

2.3.5 在绘图窗口中打开 gnuplot 的命令控制台 在 MS Windows 上,如果在 Maxima 的变量 gnuplot_command 中将“gnuplot”替换为“wgnuplot”,则 gnuplot 提供了打开控制台窗口的可能性,可以在其中输入 gnuplot 命令。不幸的是,启用此功能会导致 gnuplot 每次准备绘图时都会在短时间内“窃取”键盘焦点。

还请注意,gnuplot 4 和 5 是有区别的:

set [axis]range 命令的 reverse 关键字仅影响自动缩放。它不会反转或 否则更改命令的含义,例如 set xrange [0:1]。如果你想反转方向 在这种情况下,x 轴的位置,比如设置 xrange [1:0]。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多