emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* How to auto insert inline image link for org-plot/gnuplot result plot?
@ 2017-06-18  5:55 numbchild
  2022-01-02  9:24 ` [SOLVED] " stardiviner
  0 siblings, 1 reply; 2+ messages in thread
From: numbchild @ 2017-06-18  5:55 UTC (permalink / raw)
  To: Org-mode

[-- Attachment #1: Type: text/plain, Size: 1167 bytes --]

I want to auto insert inline image for `org-plot/gnuplot` result plot below
the table. Like this:

```org
#+PLOT: title:"Citas" ind:1 deps:(3) type:2d with:histograms set:"yrange
[0:]"
| Sede      | Max cites | H-index |
|-----------+-----------+---------|
| Chile     |    257.72 |   21.39 |
| Leeds     |    165.77 |   19.68 |
| Sao Paolo |     71.00 |   11.50 |
| Stockholm |    134.19 |   14.33 |
| Morelia   |    257.56 |   17.67 |

Press =[C-c " g]= on upper table to generate gnuplot plot image (*NOTE*: the
generated plot image is in currently working directory).

#+ATTR_ORG: :width 250
#+ATTR_LATEX: :width 2.5in
#+ATTR_HTML: :width 250px
[[file:org-plot.png]]
```

I have an idea, add an advice on `org-plot/gnuplot` with a user helper
function to inser the inline image link.
This advice need to:

- locate point below the table.
- get the `org-plot/gnuplot` result plot image link.
- insert inline image link.

[stardiviner]           <Hack this world!>      GPG key ID: 47C32433
IRC(freeenode): stardiviner                     Twitter:  @numbchild
Key fingerprint = 9BAA 92BC CDDD B9EF 3B36  CB99 B8C4 B8E5 47C3 2433
Blog: http://stardiviner.github.io/

[-- Attachment #2: Type: text/html, Size: 3622 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [SOLVED] Re: How to auto insert inline image link for org-plot/gnuplot result plot?
  2017-06-18  5:55 How to auto insert inline image link for org-plot/gnuplot result plot? numbchild
@ 2022-01-02  9:24 ` stardiviner
  0 siblings, 0 replies; 2+ messages in thread
From: stardiviner @ 2022-01-02  9:24 UTC (permalink / raw)
  To: Org-mode

[-- Attachment #1: Type: text/plain, Size: 2810 bytes --]

I write an advice for this.

#+begin_src emacs-lisp
;; `org-plot/gnuplot' advice of auto insert org gnuplot result image file.
  (advice-add 'org-plot/gnuplot :around
#'org-plot/gnuplot-insert-org-image-link)

  (defun org-plot/gnuplot-insert-org-image-link (origin-func &rest args)
    "Auto insert `org-plot/gnuplot' generated plot image file link."
    (save-excursion
      (org-plot/goto-nearest-table)
      ;; Set default options.
      (setf params nil)
      (dolist (pair org-plot/gnuplot-default-options)
        (unless (plist-member params (car pair))
          (setf params (plist-put params (car pair) (cdr pair)))))
      ;; Collect options.
      (while (and (equal 0 (forward-line -1))
                  (looking-at "[[:space:]]*#\\+"))
        (setf params (org-plot/collect-options params))))
    (setf param-file (plist-get params :file))
    (apply origin-func args)
    (goto-char (org-table-end))
    (org-indent-line) (insert (format "\n"))
    (org-indent-line) (insert (format "[[%s][%s]]" (expand-file-name
param-file) param-file))
    (org-indent-line) (insert (format "\n"))
    (when org-startup-with-inline-images (org-redisplay-inline-images)))
#+end_src

I suggest `org-plot.el` library can support this feature.

[stardiviner]           <Hack this world!>      GPG key ID: 47C32433
IRC(freeenode): stardiviner                     Twitter:  @numbchild
Key fingerprint = 9BAA 92BC CDDD B9EF 3B36  CB99 B8C4 B8E5 47C3 2433
Blog: http://stardiviner.github.io/


On Sun, Jun 18, 2017 at 1:55 PM numbchild@gmail.com <numbchild@gmail.com>
wrote:

> I want to auto insert inline image for `org-plot/gnuplot` result plot
> below the table. Like this:
>
> ```org
> #+PLOT: title:"Citas" ind:1 deps:(3) type:2d with:histograms set:"yrange
> [0:]"
> | Sede      | Max cites | H-index |
> |-----------+-----------+---------|
> | Chile     |    257.72 |   21.39 |
> | Leeds     |    165.77 |   19.68 |
> | Sao Paolo |     71.00 |   11.50 |
> | Stockholm |    134.19 |   14.33 |
> | Morelia   |    257.56 |   17.67 |
>
> Press =[C-c " g]= on upper table to generate gnuplot plot image (*NOTE*:
> the
> generated plot image is in currently working directory).
>
> #+ATTR_ORG: :width 250
> #+ATTR_LATEX: :width 2.5in
> #+ATTR_HTML: :width 250px
> [[file:org-plot.png]]
> ```
>
> I have an idea, add an advice on `org-plot/gnuplot` with a user helper
> function to inser the inline image link.
> This advice need to:
>
> - locate point below the table.
> - get the `org-plot/gnuplot` result plot image link.
> - insert inline image link.
>
> [stardiviner]           <Hack this world!>      GPG key ID: 47C32433
> IRC(freeenode): stardiviner                     Twitter:  @numbchild
> Key fingerprint = 9BAA 92BC CDDD B9EF 3B36  CB99 B8C4 B8E5 47C3 2433
> Blog: http://stardiviner.github.io/
>

[-- Attachment #2: Type: text/html, Size: 6132 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-01-02  9:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-18  5:55 How to auto insert inline image link for org-plot/gnuplot result plot? numbchild
2022-01-02  9:24 ` [SOLVED] " stardiviner

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).