Top Banner
41

Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Dec 21, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.
Page 2: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Visualising Data in Silverlight and WPF

Ivan TowlsonMindscapeSession Code: WUX305

Page 3: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Agenda

Data visualisation and Silverlight/WPFVisualising objectsVisualising data setsToolkits and controls

Page 4: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

The Business Problem

Data != Information

Page 5: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

The Business Problem

It’s easy to miss important information in a sea of purely textual data

Trends and correlationsSpecial or different casesTrouble spots

It’s often quicker to take in information with a graphical assist

Quick way to get a “big picture” overview

Page 6: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

The Business Problem

Page 7: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

The Business Problem

Page 8: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

The Technical Problem

GUI programming stalled in 1991Low level graphics primitivesProcedural drawing codePresenting data in a new UI required a whole new control

Page 9: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

The Technical Problem

Technical consequencesCustom visualisations required extensive custom codeExpensive to developThird party controls

Expensive to buy because expensive for vendor to developSpecific in purposeCost of learning complex new control APIs

Hard to justify the cost unless visualisation was a core requirement

Page 10: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

The Technical Problem

Business consequencesEncouraged anaemic presentation of dataDisplaying data, not information“Battleship grey” and data gridsOnus on users to detect patterns and anomalies

Page 11: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Silverlight and WPF

Replace the appearance of a control without having to rewrite its entire behaviourDeclarative, higher-level graphics APIFlexible data binding mechanisms

Page 12: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Silverlight and WPF

Writing simple visualisations is a matter of hours rather than daysIt is now affordable to be able to visualise your data your wayData visualisation is the killer application for Silverlight and WPF

Page 13: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Single Data Item Visualisation

BindingIValueConverter

IMultiValueConverter (WPF only)DataTemplateINotifyPropertyChanged

Page 14: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Visualising Single Data Itemsdemo

Page 15: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Visualising a Collection of Data

Toolkits and controlsCustom visualisations

Page 16: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Visualisation Toolkits and Controls

Silverlight Toolkithttp://www.codeplex.com/SilverlightCharting controls (beta)

WPF Toolkithttp://wpf.codeplex.comCharting controls (beta)

Third party controls (commercial and free)Charting, diagramming

Page 17: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Silverlight Charting Controlsdemo

Page 18: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Building Custom Visualisations

ItemsControlSelectorListBoxMultiSelector

ItemTemplate / ItemTemplateSelectorItemsPanel / ItemContainerStyleINotifyCollectionChanged

Bindable LINQ

Page 19: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Visualising a Collection of Datademo

Page 20: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Summary

Silverlight and WPF data binding is completely different to VB or Windows FormsBind sizes, colours, positions, transforms, visibilities

IValueConverterDataTemplateContentTemplateSelector / ItemTemplateSelector

Use panels to perform layoutItemsControl > ItemsPanel / ItemContainerStyle

Page 21: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Call to Action

A meaningful visual display is a great way to put information in front of users

Display information, not just dataIt is now affordable to be able to visualise your data your way

Writing simple visualisations is a matter of hours rather than daysBut be realistic – embrace “good enough”

Data visualisation is the killer application for Silverlight and WPF

Page 22: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

question & [email protected]@mindscape.co.nz

http://hestia.typepad.com/flatlander/ http://www.mindscape.co.nz/

Page 23: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

www.microsoft.com/teched

Sessions On-Demand & Community

http://microsoft.com/technet

Resources for IT Professionals

http://microsoft.com/msdn

Resources for Developers

www.microsoft.com/learning

Microsoft Certification & Training Resources

Resources

Page 24: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS,

IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 25: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Video Titlevideo

Page 26: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Customer TitleNameTitleCompany

customer

Page 27: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Demo TitleNameTitleCompany

demo

Page 28: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Partner TitleNameTitleCompany

partner

Page 29: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Announcement Titleannouncing

Page 30: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

PowerPoint TemplateSubtitle color

Set the slide title in “title case” and subheads in “sentence case”The subhead color is defined for this template as the fourth font color from the leftFont Size Requirements

Main bullet points must not be smaller than 24ptDo NOT use any font size lower than 20ptSet subhead to 36pt or smaller so it will fit on a single lineTurn off Auto Resizing on all text boxes

Page 31: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

PowerPoint Guidelines

Font, size, and color for text have been formatted for you in the Slide MasterUse the color palette shown belowSee next slide for additional guidelinesHyperlink color: www.microsoft.com

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Page 32: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Use white text only on these colors

Instructions on Color Readability

Colors are brighter when projected, so contrast and readability are diminished

Sample SampleSample

Sample

Sample

Sample SampleSample

Sample Sample

Use black or dark gray text only on these colors

Page 33: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Slide for Showing Software Code

Use this layout to show software codeThe font is Consolas, a monospace fontThe slide doesn’t use bullets but levels can be indented using the “Increase List Level” icon on the Home menuTo use straight quotes " instead of smart quotes ”, do this:1.Click on the Office Button in the upper left corner2.At the bottom of the menu, choose PowerPoint Options3.From the left pane, select Proofing4.Click on the AutoCorrect Options button5.Select the AutoFormat As You Type tab, and deselect “Straight quotes” with “smart quotes”. Then Click OK.

Page 34: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Table Format

Table TitleColumn 1 Column 2 Column 3 Column 4 Column 5

Page 35: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Bar Chart Example

Category 1 Category 2 Category 3 Category 4

4.3

2.5

3.5

4.5

2.4

4.4

1.8

2.8

2 2

3

5

Chart Title

Series 1 Series 2 Series 3

Page 36: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Pie Chart Example

59%23%

10%9%

Chart Title

1st Qtr2nd Qtr3rd Qtr4th Qtr

Page 37: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

question & answer

Page 38: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

www.microsoft.com/teched

Sessions On-Demand & Community

http://microsoft.com/technet

Resources for IT Professionals

http://microsoft.com/msdn

Resources for Developers

www.microsoft.com/learning

Microsoft Certification & Training Resources

Resources

Page 39: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Related Content

Breakout Sessions (session codes and titles)

Interactive Theater Sessions (session codes and titles)

Hands-on Labs (session codes and titles)

Hands-on Labs (session codes and titles)

Page 40: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

Track Resources

Resource 1

Resource 2

Resource 3

Resource 4

Page 41: Ivan Towlson Mindscape Session Code: WUX305 Agenda Data visualisation and Silverlight/WPF Visualising objects Visualising data sets Toolkits and controls.

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS,

IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.