Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以在没有onmousemove的情况下创建svg吗?_Svg_Mouseevent_Gnuplot_Wikipedia_Maxima - Fatal编程技术网

我可以在没有onmousemove的情况下创建svg吗?

我可以在没有onmousemove的情况下创建svg吗?,svg,mouseevent,gnuplot,wikipedia,maxima,Svg,Mouseevent,Gnuplot,Wikipedia,Maxima,我使用gnuplot(来自Maxima cas)创建svg文件: 以及: G N U P L O T Version 5.0 patchlevel 7 last modified 2017-08-16 示例文件和Maxima CAS代码 此类svg文件包含多行,其中包含: <g onmousemove="gnuplot_svg.showHypertext(evt,'')" onmouseout="gnuplot_svg.hideHypertext()"><title&

我使用gnuplot(来自Maxima cas)创建svg文件:

以及:

G N U P L O T
Version 5.0 patchlevel 7    last modified 2017-08-16
示例文件和Maxima CAS代码

此类svg文件包含多行,其中包含:

<g onmousemove="gnuplot_svg.showHypertext(evt,'')" 
onmouseout="gnuplot_svg.hideHypertext()"><title> </title>
<use xlink:href='#gpPt6' transform='translate(686.6,831.4) 
scale(0.45)' color='rgb(190, 190, 190)'/></g
<use xlink:href='#gpPt6' transform='translate(686.6,831.3) 
scale(0.45)' color='rgb(190, 190, 190)'/
<use xlink:href='#gpPt6' transform='translate(686.6,831.3) 
scale(0.45)' color='rgb(190, 190, 190)'/    <use xlink:href='#gpPt6' 
transform='translate(686.6,831.3) scale(0.45)' color='rgb(190, 190, 
190)'/


鼠标事件处理是由Gnuplot 5.0.0到5.3中的一个bug引起的,该bug已由commit 083bae1到Gnuplot Gnuplot main修复。您可以通过以下方式获取当前版本:

git clone git://git.code.sf.net/p/gnuplot/gnuplot-main gnuplot-gnuplot-main
./prepare
./configure
make && make install
在Ubuntu 14.04上对我有用

我问过一个工作环境;如果我发现了什么,我会更新这个答案。见:

编辑:一种解决方法是在Gnuplot命令中发出
notitle
而不是
t'
。我已经修改了包
draw
中的相关代码。请参阅将d535d11和d2488b2提交至maxima

您可以获取当前版本()或仅复制一个修改过的函数:

(defun make-obj-title (str)
  (if (= (length str) 0)
    "notitle"
    (if (> (length str) 80)
      (concatenate 'string "t '" (subseq str 0 75) " ...'")
      (concatenate 'string "t '" str "'"))))

XSLT转换文件以删除您可能不想要的位。鼠标事件内容似乎是由
key=”“
触发的,它由Maxima转换为Gnuplot命令中的
plot index nnn t'
,其中
t
表示数据系列nnn的标题。当存在
t'foo'
时,则不会生成鼠标事件内容。我查看了Gnuplot源代码,但没有找到解决方法。我已经向gnuplot信息邮件列表提交了一条消息;我会通知你的。顺便提一下,5.0.0之前的版本不包含鼠标事件内容,而Gnuplot 5.0.0及更高版本确实包含鼠标事件内容。根据git tag-l,5.0.0之前的最后一个版本是4.6.6。我已经用解决方法的信息更新了我的答案,并在Maxima中更新了代码。希望这有帮助,看起来你有一个很大的问题要解决。我有ubuntu 17.10。我不得不为我安装lua5.2:“make”然后“sudomakeinstall”我已经用Ghex检查了svg文件。它不包含“鼠标”字符串=OKI已上传新图像和新代码:@Adam很棒,我很高兴听到它现在适合你。祝你玩得开心,继续做好工作。谢谢你的帮助。
(defun make-obj-title (str)
  (if (= (length str) 0)
    "notitle"
    (if (> (length str) 80)
      (concatenate 'string "t '" (subseq str 0 75) " ...'")
      (concatenate 'string "t '" str "'"))))