Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.graphics.apps.gnuplot > #3444

Re: Varying colour of a line plot, using a palette

Path csiph.com!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From Ethan A Merritt <sfeam@users.sourceforge.net>
Newsgroups comp.graphics.apps.gnuplot
Subject Re: Varying colour of a line plot, using a palette
Date Thu, 10 Nov 2016 15:36:42 -0800
Organization gnuplot development
Lines 32
Message-ID <o0309e$hrf$1@dont-email.me> (permalink)
References <e8j2gjFpuv0U1@mid.individual.net> <o01pm4$q16$1@solani.org>
Mime-Version 1.0
Content-Type text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding 7Bit
Injection-Date Thu, 10 Nov 2016 23:36:14 -0000 (UTC)
Injection-Info mx02.eternal-september.org; posting-host="9a8e2209564146595c1cfc5e2d7c3acd"; logging-data="18287"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18yEFyRlCqDKQGCOCnepLQk"
User-Agent KNode/4.14.5
Cancel-Lock sha1:hV1oiP/sapsSyldxtOUXk6Q6NPU=
Xref csiph.com comp.graphics.apps.gnuplot:3444

Show key headers only | View raw


Karl Ratzsch wrote:

> Am 10.11.2016 um 12:03 schrieb John Edwards:
> 
>> I was wondering if anyone can think of a neat trick to vary the color of
>> a line according to magnitude. E.g. If I plot sin(x) I'd like the color
>> to vary with signal matnitude.
>> 
>> To explain further what I am trying to do, I'd like to use a palette of
>> greens and reds so that when the signal goes over a threshold then the
>> plot would vary (slowly) from green to red to highlight specific issues.
> 
> Hm, very easy:
> 
>   set samp 800
> 
>   colourf(x) = (x<treshold) ? 0 : (x * 256) + (256 * (1-x) * 256)
> 
>   plot "+" us 1:(sin($1)):(colourf((sin($1)+1)/2)) w l lc rgb var lw 3
> 
> , where you define colourf(0<=x<1) so it returns a suitable 24 bit
> integer, corresponding to the desired rgb colour.

Or you could use a defined palette:

set palette defined (0 "black", 0.5 "black", 0.75 "green", 1.0 "red")
f(x) = sin(x) * cos(x/10)
set xrange [-20:20]
set sample 800

plot '+' using ($1):(f($1)):(f($1)) with lines linecolor palette z

	Ethan

Back to comp.graphics.apps.gnuplot | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Varying colour of a line plot, using a palette John Edwards <johned0@gmail.com> - 2016-11-10 11:03 +0000
  Re: Varying colour of a line plot, using a palette Karl Ratzsch <mail.kfr@gmx.net> - 2016-11-10 13:37 +0100
    Re: Varying colour of a line plot, using a palette Ethan A Merritt <sfeam@users.sourceforge.net> - 2016-11-10 15:36 -0800
      Re: Varying colour of a line plot, using a palette John Edwards <johned0@gmail.com> - 2016-11-11 10:24 +0000
  Re: Varying colour of a line plot, using a palette Karl Ratzsch <mail.kfr@gmx.net> - 2016-11-10 18:32 +0100
    Re: Varying colour of a line plot, using a palette John Edwards <johned0@gmail.com> - 2016-11-11 10:23 +0000

csiph-web