Facet Chart

Facets allow to segregate a data set based on variable or sample meta data. Here are some examples using bar graphs and scatter plots.


Example Color Themes

Example Fonts



Show Code

Tools

<!-- Include the CanvasXpress library in your HTML file -->
<link rel="stylesheet" href="https://www.canvasxpress.org/dist/canvasXpress.css" type="text/css"/>
<script src="https://www.canvasxpress.org/canvasXpress.min.js"></script>


<!-- Create a canvas element for the chart with the desired dimensions -->
<div>
  <canvas id="canvasId" width="600" height="600"</canvas>
</div>


<!-- Create a script to initialize the chart -->
<script>

  <!-- Create the data for the graph -->
  var data = {
     "x" : {
        "Factor1" : ["Lev : 1","Lev : 2","Lev : 3","Lev : 1","Lev : 2","Lev : 3"],
        "Factor2" : ["Lev : A","Lev : B","Lev : A","Lev : B","Lev : A","Lev : B"],
        "Factor3" : ["Lev : X","Lev : X","Lev : Y","Lev : Y","Lev : Z","Lev : Z"],
        "Factor4" : [5,10,15,20,25,30],
        "Factor5" : [8,16,24,32,40,48],
        "Factor6" : [10,20,30,40,50,60]
     },
     "y" : {
        "data" : [
          [5,10,25,40,45,50],
          [95,80,75,70,55,40],
          [25,30,45,60,65,70],
          [55,40,35,30,15,1]
        ],
        "desc" : ["Magnitude1","Magnitude2"],
        "smps" : ["S1","S2","S3","S4","S5","S6"],
        "vars" : ["V1","V2","V3","V4"]
     },
     "z" : {
        "Annt1" : ["Desc : 1","Desc : 2","Desc : 3","Desc : 4"],
        "Annt2" : ["Desc : A","Desc : B","Desc : A","Desc : B"],
        "Annt3" : ["Desc : X","Desc : X","Desc : Y","Desc : Y"],
        "Annt4" : [5,10,15,20],
        "Annt5" : [8,16,24,32],
        "Annt6" : [10,20,30,40]
     }
  }
  
  
  <-- Create the configuration for the graph -->
  var config = {
     "graphOrientation":"vertical",
     "graphType":"Bar",
     "layoutCollapse":"false",
     "layoutStripBackgroundBorderColor":"rgb(0,0,0)",
     "layoutType":"rows",
     "showTransition":"false",
     "theme":"CanvasXpress"
  }
  

  <!-- Call the CanvasXpress function to create the graph -->
  var cX = new CanvasXpress("canvasId", data, config);


  
  <-- Functions after rendering graph -->
  cX.segregateVariables(["Annt2"]);
  cX.segregateSamples(["Factor1"]);
  
</script>
library(canvasXpress)
y=read.table("https://www.canvasxpress.org/data/cX-generic-dat.txt", header=TRUE, sep="\t", quote="", row.names=1, fill=TRUE, check.names=FALSE, stringsAsFactors=FALSE)
x=read.table("https://www.canvasxpress.org/data/cX-generic-smp.txt", header=TRUE, sep="\t", quote="", row.names=1, fill=TRUE, check.names=FALSE, stringsAsFactors=FALSE)
z=read.table("https://www.canvasxpress.org/data/cX-generic-var.txt", header=TRUE, sep="\t", quote="", row.names=1, fill=TRUE, check.names=FALSE, stringsAsFactors=FALSE)
canvasXpress(
  data=y,
  smpAnnot=x,
  varAnnot=z,
  graphOrientation="vertical",
  graphType="Bar",
  layoutCollapse=FALSE,
  layoutStripBackgroundBorderColor="rgb(0,0,0)",
  layoutType="rows",
  showTransition=FALSE,
  theme="CanvasXpress",
  afterRender=list(list("segregateVariables", list("Annt2")), list("segregateSamples", list("Factor1")))
)