What’s New in Visualization

Brett Champion, Wolfram

(RowDefault[, (Spacer1), , (Spacer1), ])  #WolframTechConf

Visualization & Graphics Talks

New Graphics Features & Improvements
Thursday @8:00 am CT, James Lane

Texture Support Updates in Wolfram Graphics
Thursday @8:30 am CT, Yuzhu Lu

Tabular Visualization
Thursday @11:00 am CT, Nirmal Malapaka

Visualization Highlighting & Labeling
Thursday @11:30 am CT, MinHsuan Peng

Office Hour: Visualization & Graphics
Thursday @2:00-3:00 pm CT, Development Team

Haloing of Graphics Elements

Haloing effectively draws a border around everything.

Graphics[{Red,Haloing[Black,3],AbsoluteThickness[10],Circle[{0,0},1],Text[Style["Wolfram",48]]},ImagePadding->30]

We’re starting to use it automatically in some situations, such as some labels in AstroGraphics:

Manipulate[AstroGraphics[Entity["Star","Sun"],AstroRange->Quantity[3,"Arcminutes"],AstroReferenceFrame->{"MeanEcliptic",(DateObject["Thu 13 Jan 2005 19:02:54""GMT"-5, DateObject[{2005,1,13,19,2,54.71488428115845`},"Instant","Gregorian",-5.`]])+Quantity[t,"Hours"],Entity["Planet","Saturn"]},ImageSize->500],{t,-8,8}]

Contour labels also run into similar difficulties with backgrounds:

SeedRandom[1];f=Sum[Sin[RandomReal[5,2].{x,y}],{5}];
ContourPlot[f,{x,-1.5,1.5},{y,-1.5,1.5},ContourLabels->True,ImageSize->250]

We’re currently experimenting with improvements to contour labeling, including using halos to make the labels stand out better:

{ContourPlot[f,{x,-1.5,1.5},{y,-1.5,1.5},ContourLabels->True,Method->{"ContourLabelMethod"-><|"MinimalOverlap"->True|>},ImageSize->250],ContourPlot[f,{x,-1.5,1.5},{y,-1.5,1.5},ContourLabels->True,Method->{"ContourLabelMethod"-><|"MinimalOverlap"->True|>,
"ContourLabelStyle"->{"Contrast",Haloing[]}},ImageSize->250]}

Interactive Highlighting

Euler (or Cornu) Spiral:

ParametricPlot[{FresnelC[t],FresnelS[t]},{t,-10,10},]

Add droplines to the frame edges

ParametricPlot[{FresnelC[t],FresnelS[t]},{t,-10,10},PlotHighlighting->"Dropline",]

Look at the components individually:

Plot[{FresnelC[t],FresnelS[t]},{t,0,5},]

Plot[{FresnelC[t],FresnelS[t]},{t,0,5},PlotHighlighting->{"XNearestPoint","XLine",{"YLabel",<|RoundingRadius->5|>}},]

High-Dimensional Visualization

V14.0 introduced a set of Pairwise___Plot functions for creating sets of plots from multi-dimensional data.

In these examples, “iris data” is an n×4 array of values, with each column being the measurement of a particular iris flower.

PairwiseListPlot[,Headers->{"sepal length","sepal width","petal length","petal width"}]

PairwiseSmoothDensityHistogram[,Headers->{"sepal length","sepal width","petal length","petal width"}]

Tabular Visualization

Tabular is a new object for efficiently representing rectangular data.

tabular=ToTabular[ResourceData["Sample Data: Fisher's Irises"]]

The vast majority of data visualization functions have been extended to take Tabular objects, with a rule syntax to represent which columns you’re interested in plotting:

ListPlot[tabular->{"SepalLength","SepalWidth"}]

This can be much easier to work with, since you don’t have to directly process the data to visualize it:

PairwiseListPlot[tabular->{"SepalLength","SepalWidth","PetalLength","PetalWidth"}]

PairwiseSmoothDensityHistogram[tabular->{"SepalLength","SepalWidth","PetalLength","PetalWidth"}]

Here are all the “Tabular” talks:

Transforming Tabular Data
Thursday @10:00-11:00 am CT, Rob Knapp

Tabular Visualization
Thursday @11:00 am CT, Nirmal Malapaka

Tabular Displays
Thursday @11:30 am CT, Jason Abernathy

Fast, Robust and Large-Scale Tabular Import/Export
Thursday @12:00 pm CT, Piotr Wendykier