element;intro
#Welcome;Welcome to the interactive tour for iSEE - the interactive SummarizedExperiment Explorer.<br/><br/>You will be showed around the different components of iSEE and learn the basic usage mechanisms by doing - the highlighted elements will be responding to the user's actions, while the rest of the UI will be shaded. You will be prompted at particular spots to perform some actions, which will be marked like this in the tour: <b>Action</b>. Now click on the 'Next' button or use the right arrow of your keyboard to proceed into your tour.
#allpanels;The iSEE package delivers a Shiny app that allows you to generate a series of plots useful in exploring SummarizedExperiment objects. These plots can be conveniently linked to one another by brushing (i.e. clicking and holding the mouse over a plot area).<br/>With a nice touch of reproducibility, you can obtain the full code to re-create the plots at the end of your live session, and a graph representing the links between plots and tables.<br/>You can generate different panel types in iSEE...
#redDimPlot1;For example, you can obtain a reduced dimension plot (e.g. PCA, T-SNE) to efficiently explore the high-dimensional dataset under inspection.
#colDataPlot1;Also, you can have a plot where the variable of interest is one of the experimental covariates (here called a column data plot).
#featAssayPlot1;Additionally, a feature assay plot represents the assay (here, expression) values for the samples at hand in different stratifications (if selecting an experimental factor for the x-axis) or as a scatter plot (if you chose another continuous variable, e.g. the expression values of another gene).
#rowStatTable1;Interactive tables are also useful in many contexts, to display the rowData slot of your input object, and also to efficiently select genes for the other plots.
#rowDataPlot1;The data in the rowData slot of the input object might also be explored in a graphical way with a row data plot
#heatMapPlot1;Last but not least, you can produce heatmaps of the data at hand, as a compact and immediate view of your features*samples expression matrix
#newPanelChoice + .selectize-control;The app starts with default values of one plot per type, but you can have more of each type. You can select which type the new panel will be in this dropdown menu. 
#newPanelAdd;Once selected, the new panel will be created by clicking on this button. The new panel will be placed after the currently open ones.
#panelOrganization;You can re-organize the plots and tables you created with the help of this sidebar panel.
#redDimPlot1_ShiftDown; Clicking on this button, you can shift down the plot/table by one position...
#redDimPlot1_ShiftUp;... or one position up.
#redDimPlot1_Discard;You can even remove a plot by clicking on the trash icon of the corresponding element.
#redDimPlot1_Modify;Another possibility is to change the width of the plot/table element (keep in mind that the organization is based on a width per row of 12), as well as the height of the plot (to be specified in pixels).
#redDimPlot1_DataBoxOpen;Regarding the plots, you have plenty of options to control their appearance. The parameters are located in each of these collapsible panels, which collectively contain parameters, related to the plot type itself (as in the Data parameters)...
#redDimPlot1_VisualBoxOpen;... or in general to choose the Visual parameters (which can be related to color properties, point properties, or other features as well)...
#redDimPlot1_SelectBoxOpen;... or also for defining the behavior when using the brushing to interact and link two different plots together. Some details are provided in the next step.<br/><br/><b>Action: </b>please click first on the header of the collapsible panel. The brushing is automatically turned on, and serves for two purposes, based on the action of clicking and holding the mouse over a plot area to select a number of samples (or cells).
#redDimPlot1;A zooming functionality is possible by first brushing then double-clicking on the brushed area. You can try it out here. <b>Action: </b>Click and hold to select an area, then release. Now, double click inside the marked area to zoom in. To zoom out to the original plot, double-click on the plot. <br/><br/>As we said in the previous step, brushing will be used not only for zooming, but also for linking plots together. Click on 'next' to learn more on this by trying this out yourself.
#redDimPlot1_SelectBoxOpen;What happens to the linked plots can be controlled by the other parameters in this box. In the next steps we describe a way to check the expression of a gene of interest in a subpopulation of cells. We will do this by selecting a subset in the reduced dimension plot, and then activating this brush on the destination plot (the gene expression plot).
#redDimPlot1;Two types of selection are available in iSEE: the classical square area, by clicking, holding, and dragging the mouse pointer. And a new modality we implemented in iSEE, resembling a polygon-lasso. <b>Action: </b>To try out the brushing, select an area in this plot which contains a subset of cells in the source plot...
#redDimPlot1_PanelGeneralInfo;Some info on the selected points is displayed in this element.
#featAssayPlot1_SelectBoxOpen;To affect other plots with the selection you just did, please go and then open the collapsible box for the feature assay plot (the destination plot). <b>Action: </b>Click on the collapsible box.
#featAssayPlot1_SelectByPlot + .selectize-control;<b>Action: </b>Select the corresponding incoming brushing option, 'Reduced dimension plot 1' in our case.
#redDimPlot1_PanelLinkInfo;You can notice from these elements on the bottom of the panels which links exist. For example, that this plot transmits the brush to...
#featAssayPlot1_PanelLinkInfo;... this other panel.
#featAssayPlot1_SelectEffect;The effect of the brushing can operate in plotting only the subset of cells ('Restrict'), coloring them ('Color'), or applying a transparency effect ('Transparent').
#featAssayPlot1;You can appreciate how this operation changed the corresponding plot in the main panel. You can link this plot to other ones, following a similar fashion to the one we just tried out: select an area on the source plot, then select which other plot should receive the brush information. One important thing to keep in mind when brushing violin plots is that points will be selected only if the brushed area includes the center of the x-tick a.k.a. the center of the violin plot - the current implementation is robustly defined with this way of selecting points.
#heatMapPlot1;A couple of features are unique to the heatmaps, i.e. the feature parameters and the column data parameters. You can learn something more about them in the next steps.
#heatMapPlot1_FeatNameBoxOpen;<b>Action: </b>Click here to open this collapsible box. In here you can specify in the selectize widget the names of the features you would like to be included in the heatmap. You can do it by hand, keeping in mind that autocompletion is nicely supported, or also by selecting them from other panels, like row data plots or row statistics tables. Also, you can select what assay type you want to use to be displayed in the heatmap (logcounts being a reasonable default choice). <b>Action: </b>Select 'Row statistics table 1' as an incoming link, below the 'Import from' label. You'll operate on that table in the next step.
#rowStatTable1;<b>Action: </b>You can for example type in here 'Cxc' to select genes containing that string (likely chemokines)... 
#heatMapPlot1_Clear;<b>Action: </b>First, remove the current selection by clicking on the 'Clear features' button...
#heatMapPlot1_Import;<b>Action: </b>... and then click on the 'Import features' button here. The features are added sequentially to the heatmap.
#heatMapPlot1_Clustered;If you want to cluster the rows, click the 'Cluster features' button. This will also rearrange the elements in the selectize according to the clustering. <b>Action: </b>Click on the 'Cluster features' button.
#heatMapPlot1;You can see how the rows were reorganized in the plot.
#heatMapPlot1_ColDataBoxOpen;You might also want to annotate the heatmap, and to do so you just have to select the relevant column data (multiple selection is possible).
#heatMapPlot1;And again, you can see how the information displayed on top reflect your selections.
#heatMapPlot1_FeatNameBoxOpen;More general coloring parameters can be found in this box, as well as the options to center and perform row scaling on the expression values. 
.navbar-static-top;A couple of useful additional elements can be found in the dashboard header.For example, in the dropdown menu labelled with the wrench icon, you can access some of the iSEE diagnostics. <b>Action: </b>Click on the wrench icon to open the dropdown.
#open_linkgraph;Clicking on the item marked with the chain icon, you can obtain a graph representation of the existing links and brushes among your open plot and table panels. This can be very useful once you open a multitude of panels.
#getcode_all;Once you are done with your iSEE live session, you might want to reproduce exactly the plots you generated. This can be done by clicking on the button 'Extract the R code!', marked with the magic wand icon, also in the iSEE diagnostics dropdown menu.
#acereport_r;This button opens a modal popup window, with a shinyAce-based text editor, where the code is formatted and displayed with some nice syntax highlighting. You can copy the code to the clipboard by selecting the text (please include the initial lines and the sessionInfo commands for best tracking of your environment), and store it in your analysis report/script. Your code can then be further edited to finalize the plots (e.g., for publication). 
#get_panel_settings;As a complement to the code, you can also extract the current panel settings. This could be useful if you are planning for example to re-open the app, and want to have the same set of parameters.
.navbar-static-top;Another dropdown menu is the Documentation, accessible by clicking on the question mark. <b>Action: </b>Click on the question mark icon to open the other dropdown menu.
#tour_firststeps;This contains the button to start the introjs-based tour, which you are taking as you read this...
#open_vignette;... as well as a link to the vignette for the iSEE package, in case you want to consult it while running the app.
.navbar-static-top;Clicking on the info icon you can display some additional information. <b>Action: </b>Click on the info icon.
#session_info;You can see either the session information from which you are running iSEE (which you should report in case of issues or bugs to ensure others are aware on the packages you loaded, and their versions)...
#iSEE_info;... or also a couple of information on the development team that got together to create the iSEE package, plus the item to insert in your citations if you used iSEE. You can follow the development version of the package by checking the GitHub repository linked here. New functionality will be added in the future. The authors appreciate well-considered suggestions for improvements or new features, or even better, pull requests.
#Thanks;Thank you for taking the tour of iSEE!
