# plotting

Plotting is the technique of visualizing data or functions as graphs, including line plots and other displays.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Outlier Handling at Scale in Experimentation

DevFeed: [Outlier Handling at Scale in Experimentation](<https://devfeed.tech/articles/outlier-handling-at-scale-in-experimentation-30453.md>)

Original publisher: [Read original article](<https://booking.ai/outlier-handling-at-scale-in-experimentation-a8bb140e1ab8?source=rss----4d265f07defc---4>)

Author: Margarida Moreira da Silva

Published: 2026-07-01T13:44:26Z

Content type: article

Language: en

Sources: [Booking.com Data Science](<https://devfeed.tech/sources/booking-com-data-science.md>)

Topics: [experiments](<https://devfeed.tech/topics/experiments.md>), [data](<https://devfeed.tech/topics/data.md>), [Simulation](<https://devfeed.tech/topics/simulation.md>), [Ground truth / benchmark quality](<https://devfeed.tech/topics/ground-truth-benchmark-quality.md>), [plotting](<https://devfeed.tech/topics/plotting.md>)

Tags: [data](<https://devfeed.tech/tags/data.md>), [experimentation](<https://devfeed.tech/tags/experimentation.md>), [experiments](<https://devfeed.tech/tags/experiments.md>), [false-positive](<https://devfeed.tech/tags/false-positive.md>), [outlier-detection](<https://devfeed.tech/tags/outlier-detection.md>), [simulation](<https://devfeed.tech/tags/simulation.md>), [variance](<https://devfeed.tech/tags/variance.md>)

### AI overview

The article examines how extreme values affect experimentation at Booking.com. It describes permutation tests and simulated A/A experiments for diagnosing distorted p-value distributions, and reports that increasing outlier magnitude and frequency can cause test failures.

### Source excerpt

At Booking.com, thousands of experiments run simultaneously across highly heterogeneous users, from individual travellers to large travel agencies. This means our experiment data regularly contains legitimate but extreme values. When these go unhandled, they distort the statistical conclusions we draw, leading us to scale ideas that don't create value, or to discard ones that do. So, we need outlier handling methods that are reliable, automated, and applicable across diverse metrics without manual intervention. The Problem When extreme values are present in experiment data, they can compromise the estimation of average treatment effects (ATE), leading to unreliable test results and reduced statistical power. Even a single observation can inflate variance enough to mask a real effect or produce a spurious one. In practice, this means we risk shipping changes that appear positive but are not, or killing promising features because noise masked their real effect. At Booking.com's scale, this increase in false conclusions quickly compounds into a meaningful impact on customer experience and business outcomes. A Diagnostic Tool: the Permutation Test One way to assess whether extreme values are distorting results is the permutation test. By permuting over experiment data, we generate hundreds of simulated AA experiments where we know the ground truth: there is no real effect. Plotting the resulting p-values, we expect a uniform distribution. If it instead looks skewed, the underlying data distribution is compromising the validity of results. Plot 1: P-value distributions from simulated A/A tests. Clean normally-distributed estimated effects produce a uniform distribution (left), while the presence of extreme outliers results in skewed p-values (right), indicating a distorted false positive rate.Simulation Evidence: What Drives Failure? We ran AA permutation tests across a range of simulated data distributions to understand when they fail (i.e. not show a uniform p-value di

## Moon - Art

DevFeed: [Moon - Art](<https://devfeed.tech/articles/moon-art-37214.md>)

Original publisher: [Read original article](<https://muffinman.io/art/moon-white/>)

Author: Stanko

Published: 2025-10-23T00:00:00Z

Content type: article

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [plotting](<https://devfeed.tech/topics/plotting.md>), [Code](<https://devfeed.tech/topics/code.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [art](<https://devfeed.tech/tags/art.md>), [code](<https://devfeed.tech/tags/code.md>), [github](<https://devfeed.tech/tags/github.md>), [plotting](<https://devfeed.tech/tags/plotting.md>), [project](<https://devfeed.tech/tags/project.md>)

### AI overview

The author describes reviving and publishing the Moon plotting project after nearly two years. A technical pen added detail to the image, and the project's code is available on GitHub so others can generate their own version.

### Source excerpt

After almost two years (life and other projects happened), I finally plotted something new. I resurrected the Moon project, cleaned it up and published it online. Using a technical pen allowed me to add more detail to the image. It reminded me why I love pen plotting so much, and I hope to plot more in the near future. The code is available on my GitHub, and you can generate your own Moon here. Created: October 2025Size: 30x30cmPaper: Fabriano Black Black 300gsmPens: rOtring variant technical pen, Aristo white ink

## Libraries I use for generative art

DevFeed: [Libraries I use for generative art](<https://devfeed.tech/articles/libraries-i-use-for-generative-art-37303.md>)

Original publisher: [Read original article](<https://muffinman.io/blog/js-libraries-for-generative-art/>)

Author: Stanko

Published: 2022-02-28T00:00:00Z

Content type: article

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [generative art](<https://devfeed.tech/topics/generative-art.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Randomizer](<https://devfeed.tech/topics/randomizer.md>), [plotting](<https://devfeed.tech/topics/plotting.md>), [WebAssembly](<https://devfeed.tech/topics/web-assembly.md>), [Data structures](<https://devfeed.tech/topics/data-structures.md>)

Tags: [generative-art](<https://devfeed.tech/tags/generative-art.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [plotting](<https://devfeed.tech/tags/plotting.md>), [programming](<https://devfeed.tech/tags/programming.md>), [random](<https://devfeed.tech/tags/random.md>), [webassembly](<https://devfeed.tech/tags/webassembly.md>)

### AI overview

A curated list of JavaScript libraries used to create generative art, organized into categories including randomness and noise, geometry, vector fields, 3D, spatial data structures, Axidraw, and other tools. The author selected the libraries based partly on performance and describes their practical uses.

### Source excerpt

This is going to be a very straight forward post. Just a list of JavaScript libraries I use in creating my generative art. And I really mean I use (and abuse) them. All of them are used in multiple of my drawings. I'll include couple of photos under the respective libraries. I finally settled with these libraries after trying several other alternatives for each. Performance was one of the key factors (especially as generative work can get brute-forcy sometimes). Huge thank you to all people who created and shared these wonderful tools!Also, as a rule of thumb, when you find a good library, you might want to check author's GitHub profile. In the most cases you are going to find more useful stuff there. That is exactly how I found some of these. Categories: Randomness and noise Geometry Vector fields 3D vector line engines Spatial data structures Axidraw Other Randomness and noise # seedrandom # In generative programming it is super important to be able to repeat the same output. As randomness is heavily involved, we need a way to repeat random values. That's where seedrandom steps in as an excellent seeded random number generator. random-words # For random number generator seeds, I like to use real words instead of randomly generated strings. This library is a simple dictionary of couple of thousands english words. simplex-noise # Fast implementation of Open Simplex noise. poisson-disk-sampling # When you need a random collections of points in space, Poisson sampling is a great tool. It gives us much more natural distribution than just using random values. Geometry # js-angusj-clipper # This library is a lifesaver. For all your polygon clipping and offseting needs. And it is super fast as it is implemented in WebAssembly. voronoi # Sometimes I think I use Voronoi diagrams too much in my work. Anyway, this library efficiently computes Voronoi diagrams. robust-point-in-polygon # For figuring out if the point is inside of the polygon. I tried a couple of other libraries

## Pillars - Art

DevFeed: [Pillars - Art](<https://devfeed.tech/articles/pillars-art-37218.md>)

Original publisher: [Read original article](<https://muffinman.io/art/pillars/>)

Author: Stanko

Published: 2020-04-18T00:00:00Z

Content type: article

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [Algorithm](<https://devfeed.tech/topics/algorithm.md>), [plotting](<https://devfeed.tech/topics/plotting.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [image](<https://devfeed.tech/tags/image.md>), [plotting](<https://devfeed.tech/tags/plotting.md>)

### AI overview

Pillars is an art composition created through an algorithmic plotting process involving about 27,000 circles, 82 meters of lines, and six hours of plotting. The artist also describes an early attempt to simulate tearing.

### Source excerpt

On the second to last image, you can see one of my first attempts to simulate tearing. If I ever return to this algorithm, I'll make a new composition wider. Created: April 2020Size: 42x30cmPaper: KunstdruckPens: Pigma Micron

## From gnuplot to Matplotlib & Pandas

DevFeed: [From gnuplot to Matplotlib & Pandas](<https://devfeed.tech/articles/from-gnuplot-to-matplotlib-pandas-36399.md>)

Original publisher: [Read original article](<https://berthub.eu/articles/posts/from-gnuplot-to-matplotlib-pandas/>)

Published: 2019-04-01T08:59:00Z

Content type: tutorial

Language: en

Sources: [Bert Hubert's writings](<https://devfeed.tech/sources/bert-hubert-s-writings.md>)

Topics: [pandas](<https://devfeed.tech/topics/pandas.md>), [plotting](<https://devfeed.tech/topics/plotting.md>), [data](<https://devfeed.tech/topics/data.md>), [CSV](<https://devfeed.tech/topics/csv.md>), [Shell](<https://devfeed.tech/topics/shell.md>)

Tags: [csv](<https://devfeed.tech/tags/csv.md>), [data](<https://devfeed.tech/tags/data.md>), [pandas](<https://devfeed.tech/tags/pandas.md>), [plotting](<https://devfeed.tech/tags/plotting.md>), [shell](<https://devfeed.tech/tags/shell.md>)

### AI overview

This tutorial introduces Matplotlib and Pandas as an alternative to gnuplot for analyzing and plotting system data. It explains how Pandas and Matplotlib keep labeled data and graphing in one programming environment, using vmstat output and CSV files as examples.

### Source excerpt

I've been using gnuplot since.. like forever. It is one of my best friends in plotting data and discovering what is going on. But for all its greatness, you do tend to run into a wall - once you step outside the things gnuplot is good at, suddenly large heaps of awk, sort, unique and odd shell scripts are required to get to the next level. This is no criticism of gnuplot - it is great for what it is for.

## Plotting Reddit post frequencies with d3

DevFeed: [Plotting Reddit post frequencies with d3](<https://devfeed.tech/articles/plotting-reddit-post-frequencies-with-d3-32151.md>)

Original publisher: [Read original article](<https://adambard.com/blog/plotting-reddit-post-frequencies-with-d3/>)

Published: 2016-02-20T00:00:00Z

Content type: tutorial

Language: en

Sources: [Adam Bard](<https://devfeed.tech/sources/adam-bard.md>)

Topics: [d3.js](<https://devfeed.tech/topics/d3-js.md>), [plotting](<https://devfeed.tech/topics/plotting.md>), [data](<https://devfeed.tech/topics/data.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [charts](<https://devfeed.tech/tags/charts.md>), [code](<https://devfeed.tech/tags/code.md>), [d3](<https://devfeed.tech/tags/d3.md>), [d3-js](<https://devfeed.tech/tags/d3-js.md>), [data](<https://devfeed.tech/tags/data.md>), [graphs](<https://devfeed.tech/tags/graphs.md>), [plotting](<https://devfeed.tech/tags/plotting.md>)

### AI overview

A tutorial describing how the author added a 7x24 color-coded grid plot to Later's Reddit post timing analysis page using D3.js. The chart represents posting frequency across hours and days of the week, providing a more precise view than separate bar charts.

### Source excerpt

This week I added a better graph to Later (for Reddit)'s post timing analysis page. Previously, the most common time and the most common day were plotted on separate bar charts. However, I noticed that I got called out on this in this article on Medium, which offered a pretty sensible alternative that I wasted no time in ripping off wholesale. I still have the bar graphs in, but I also added a 7x24 color-coded grid plot, allowing for a more accurate view of exactly when the most popular posts were posted.

## Using an R Container for Analytical Models

DevFeed: [Using an R Container for Analytical Models](<https://devfeed.tech/articles/using-an-r-container-for-analytical-models-35187.md>)

Original publisher: [Read original article](<https://blog.jessfraz.com/post/r-containers-for-data-science/>)

Published: 2015-06-30T15:25:24Z

Content type: tutorial

Language: en

Sources: [Jessie Frazelle](<https://devfeed.tech/sources/jessie-frazelle.md>)

Topics: [R](<https://devfeed.tech/topics/r.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Data Science](<https://devfeed.tech/topics/data-science.md>), [plotting](<https://devfeed.tech/topics/plotting.md>), [Docker Image](<https://devfeed.tech/topics/docker-image.md>)

Tags: [container](<https://devfeed.tech/tags/container.md>), [data-science](<https://devfeed.tech/tags/data-science.md>), [docker](<https://devfeed.tech/tags/docker.md>), [docker-image](<https://devfeed.tech/tags/docker-image.md>), [plotting](<https://devfeed.tech/tags/plotting.md>), [python](<https://devfeed.tech/tags/python.md>)

### AI overview

A tutorial on building and using an R Docker container for data science. It covers creating a custom image from an R base image, installing selected R packages, running the container with mounted data and X11 display support, and plotting the iris dataset with ggplot2.

### Source excerpt

So it turns out I'm pretty bad at vacation. I had this idea for a blog post and one thing lead to another and here we are... You probably know by now I hate installing things on my host. At my previous job we did a lot of work with using Python and R for data science. I still love plotting data with ggplot and my favorite R package, wes anderson color palette. Here's a fast intro into how to do this with an R Docker image. Now everyone loves their share of different packages, without a doubt I bet most of them are written by Hadley Wickham ;). Can you imagine if the percentage of packages contributed by Hadley to CRAN was mirrored by someone to NPM or pip? It would be crazy. We are going to start with an R base and build our ideal (aka you can make yours different, chill...) R data science container, with the following Dockerfile: # our R base image FROM r-base # install packages # these are ones I like RUN echo 'install.packages(c("ggplot2", "plyr", "reshape2", "RColorBrewer", "scales","grid", "wesanderson"), repos="http://cran.us.r-project.org", dependencies=TRUE)' > /tmp/packages.R \ && Rscript /tmp/packages.R # create an R user ENV HOME /home/user RUN useradd --create-home --home-dir $HOME user \ && chown -R user:user $HOME WORKDIR $HOME USER user # set the command CMD ["R"] Build the image: $ docker build --rm --force-rm -t jess/r-custom . Run and use the image: # we need X11 for the graph to display, alternatively # you can save to a file that is in a bind-mounted dir # or you can docker cp the file to the host :) $ docker run -it --name analytics \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e DISPLAY=unix$DISPLAY \ jess/r-custom # bind mount your data $ docker run -v $(pwd)/data:/home/user/data \ -it --name analytics \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e DISPLAY=unix$DISPLAY \ jess/r-custom Now plot something: library(wesanderson) library(ggplot2) ggplot(iris, aes(Sepal.Length, Sepal.Width, color = Species)) + geom_point(size = 3) + scale_color_manual(values = wes_pal