ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* Plot using pgfplots: order of appearance of two simple plots
@ 2015-12-21 12:55 Procházka Lukáš Ing. - Pontex s. r. o.
  2015-12-21 13:45 ` Mojca Miklavec
  0 siblings, 1 reply; 3+ messages in thread
From: Procházka Lukáš Ing. - Pontex s. r. o. @ 2015-12-21 12:55 UTC (permalink / raw)
  To: ConTeXt

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

Hello,

I'm just starting with pgfplots library.

I have two plots, one being filled:

----
\usemodule[pgfplots]

\starttext
   \starttikzpicture
     \startaxis[legend entries={Sin,Cos}]
       \addplot+[mark=none]     {sin(deg(x))};
       \addplot+[mark=none,fill]{cos(deg(x))};
     \stopaxis
   \stoptikzpicture
\stoptext
----

The problem is that the latter plot hides the former as they appear in the order they are defined.

A solution would be to change the order - to swap plot "Sin" and "Cos".

But also I need to keep the order in which plots appear in the legend - it's important to keep "Sin" followed by "Cos";
I'm looking for a way to set the order of plots, something like

\addplot+[mark=none,order=2]     {sin(deg(x))};
\addplot+[mark=none,order=1]     {sin(deg(x))};

or

\addplot+[mark=none,z=2]     {sin(deg(x))};
\addplot+[mark=none,z=1]     {sin(deg(x))};

Although I'm having pgfplots.pdf ("Package PGFPLOTS manual", 20. 10. 2013) open, I cannot find a solution.

Would anyone more experienced have an idea?

Best regards,

Lukas


-- 
Ing. Lukáš Procházka | mailto:LPr@pontex.cz
Pontex s. r. o.      | mailto:pontex@pontex.cz | http://www.pontex.cz
Bezová 1658
147 14 Praha 4

Tel: +420 241 096 751
Fax: +420 244 461 038

[-- Attachment #2: t-Plot2.mkiv --]
[-- Type: application/octet-stream, Size: 239 bytes --]

\usemodule[pgfplots]

\starttext
  \starttikzpicture
    \startaxis[legend entries={Sin,Cos}]
      \addplot+[mark=none]     {sin(deg(x))};
      \addplot+[mark=none,fill]{cos(deg(x))};
    \stopaxis
  \stoptikzpicture
\stoptext

[-- Attachment #3: t-Plot2.pdf --]
[-- Type: application/pdf, Size: 8977 bytes --]

[-- Attachment #4: Type: text/plain, Size: 485 bytes --]

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

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

* Re: Plot using pgfplots: order of appearance of two simple plots
  2015-12-21 12:55 Plot using pgfplots: order of appearance of two simple plots Procházka Lukáš Ing. - Pontex s. r. o.
@ 2015-12-21 13:45 ` Mojca Miklavec
  2015-12-21 14:01   ` Procházka Lukáš Ing. - Pontex s. r. o.
  0 siblings, 1 reply; 3+ messages in thread
From: Mojca Miklavec @ 2015-12-21 13:45 UTC (permalink / raw)
  To: mailing list for ConTeXt users

On 21 December 2015 at 13:55, Procházka Lukáš Ing. - Pontex s. r. o. wrote:
> Hello,
>
> I'm just starting with pgfplots library.
>
> I have two plots, one being filled:
>
> ----
> \usemodule[pgfplots]
>
> \starttext
>   \starttikzpicture
>     \startaxis[legend entries={Sin,Cos}]
>       \addplot+[mark=none]     {sin(deg(x))};
>       \addplot+[mark=none,fill]{cos(deg(x))};
>     \stopaxis
>   \stoptikzpicture
> \stoptext
> ----
>
> The problem is that the latter plot hides the former as they appear in the
> order they are defined.
>
> A solution would be to change the order - to swap plot "Sin" and "Cos".
>
> But also I need to keep the order in which plots appear in the legend - it's
> important to keep "Sin" followed by "Cos";
> I'm looking for a way to set the order of plots, something like
>
> \addplot+[mark=none,order=2]     {sin(deg(x))};
> \addplot+[mark=none,order=1]     {sin(deg(x))};
>
> or
>
> \addplot+[mark=none,z=2]     {sin(deg(x))};
> \addplot+[mark=none,z=1]     {sin(deg(x))};
>
> Although I'm having pgfplots.pdf ("Package PGFPLOTS manual", 20. 10. 2013)
> open, I cannot find a solution.
>
> Would anyone more experienced have an idea?

There is an option "z buffer", but I guess that's only applicable for
a single \addplot.

There is an option "reverse legend" (page 213), but you might need to
take extra care about colours:

    \startaxis[legend entries={Cos,Sin},reverse legend]
      \addplot+[mark=none,fill]{cos(deg(x))};
      \addplot+[mark=none]     {sin(deg(x))};
    \stopaxis

There is an option "reverse stacked plots" which I don't fully
understand, but it claims to reverse a number of things.

There is (somewhat low level) support for layers in TikZ. You can look
for "on background", "pgfonlayer", "on background layer", etc. (But
that calls for slightly more work than just providing a simple option
like "zorder=...").

If you don't get the answer here, I would suggest you to ask the
author of pgfplots, to raise the question on their mailing list (if
they have one) or to try luck on http://tex.stackexchange.com/. There
are probably not so many experts in pgfplots on this mailing list and
the question doesn't seem to be ConTeXt-specific.

(I'm often using matplotlib with export to TikZ, even though that's
sometimes horribly slow and probably not exactly what you were looking
for either.)

Mojca
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

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

* Re: Plot using pgfplots: order of appearance of two simple plots
  2015-12-21 13:45 ` Mojca Miklavec
@ 2015-12-21 14:01   ` Procházka Lukáš Ing. - Pontex s. r. o.
  0 siblings, 0 replies; 3+ messages in thread
From: Procházka Lukáš Ing. - Pontex s. r. o. @ 2015-12-21 14:01 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hello Mojca,

thanks a lot for your answer and proposals.

I'll try them one after other... Option "reverse legend" is most promising so far.

Best regards,

Lukas


On Mon, 21 Dec 2015 14:45:25 +0100, Mojca Miklavec <mojca.miklavec.lists@gmail.com> wrote:

> On 21 December 2015 at 13:55, Procházka Lukáš Ing. - Pontex s. r. o. wrote:
>> Hello,
>>
>> I'm just starting with pgfplots library.
>>
>> I have two plots, one being filled:
>>
>> ----
>> \usemodule[pgfplots]
>>
>> \starttext
>>   \starttikzpicture
>>     \startaxis[legend entries={Sin,Cos}]
>>       \addplot+[mark=none]     {sin(deg(x))};
>>       \addplot+[mark=none,fill]{cos(deg(x))};
>>     \stopaxis
>>   \stoptikzpicture
>> \stoptext
>> ----
>>
>> The problem is that the latter plot hides the former as they appear in the
>> order they are defined.
>>
>> A solution would be to change the order - to swap plot "Sin" and "Cos".
>>
>> But also I need to keep the order in which plots appear in the legend - it's
>> important to keep "Sin" followed by "Cos";
>> I'm looking for a way to set the order of plots, something like
>>
>> \addplot+[mark=none,order=2]     {sin(deg(x))};
>> \addplot+[mark=none,order=1]     {sin(deg(x))};
>>
>> or
>>
>> \addplot+[mark=none,z=2]     {sin(deg(x))};
>> \addplot+[mark=none,z=1]     {sin(deg(x))};
>>
>> Although I'm having pgfplots.pdf ("Package PGFPLOTS manual", 20. 10. 2013)
>> open, I cannot find a solution.
>>
>> Would anyone more experienced have an idea?
>
> There is an option "z buffer", but I guess that's only applicable for
> a single \addplot.
>
> There is an option "reverse legend" (page 213), but you might need to
> take extra care about colours:
>
>     \startaxis[legend entries={Cos,Sin},reverse legend]
>       \addplot+[mark=none,fill]{cos(deg(x))};
>       \addplot+[mark=none]     {sin(deg(x))};
>     \stopaxis
>
> There is an option "reverse stacked plots" which I don't fully
> understand, but it claims to reverse a number of things.
>
> There is (somewhat low level) support for layers in TikZ. You can look
> for "on background", "pgfonlayer", "on background layer", etc. (But
> that calls for slightly more work than just providing a simple option
> like "zorder=...").
>
> If you don't get the answer here, I would suggest you to ask the
> author of pgfplots, to raise the question on their mailing list (if
> they have one) or to try luck on http://tex.stackexchange.com/. There
> are probably not so many experts in pgfplots on this mailing list and
> the question doesn't seem to be ConTeXt-specific.
>
> (I'm often using matplotlib with export to TikZ, even though that's
> sometimes horribly slow and probably not exactly what you were looking
> for either.)
>
> Mojca
> ___________________________________________________________________________________
> If your question is of interest to others as well, please add an entry to the Wiki!
>
> maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
> webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
> archive  : http://foundry.supelec.fr/projects/contextrev/
> wiki     : http://contextgarden.net
> ___________________________________________________________________________________


-- 
Ing. Lukáš Procházka | mailto:LPr@pontex.cz
Pontex s. r. o.      | mailto:pontex@pontex.cz | http://www.pontex.cz
Bezová 1658
147 14 Praha 4

Tel: +420 241 096 751
Fax: +420 244 461 038

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

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

end of thread, other threads:[~2015-12-21 14:01 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-21 12:55 Plot using pgfplots: order of appearance of two simple plots Procházka Lukáš Ing. - Pontex s. r. o.
2015-12-21 13:45 ` Mojca Miklavec
2015-12-21 14:01   ` Procházka Lukáš Ing. - Pontex s. r. o.

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 NNTP newsgroup(s).