## Agenda
- Introduction
- Examples
- A guide of bar chart
- The analysis of source code
- The Wealth & Health of Nations
- An time series visual design of Adserver svn commit record
- Resources
BLOCK (C.M.U.) EMBEDMENT PLATE PLACEMENT - WATER TREATMENT PLANTJames Halun
CONCRETE MASONRY UNITS - EMBEDMENTS
NEW STRUCTURAL STEELWORKS MEMBERS
TREATMENT BUILDING
GENERAL ARRANGEMENTS & PLACEMENTS
ASSEMBLIES & SCHEMES
ELEVATIONS
SECTIONS
DETAILS
MEMBER DIAGRAMS
PARTS
MATERIAL LISTS
ADVANCED DATA REQUIREMENTS
BLOCK (C.M.U.) EMBEDMENT PLATE PLACEMENT - WATER TREATMENT PLANTJames Halun
CONCRETE MASONRY UNITS - EMBEDMENTS
NEW STRUCTURAL STEELWORKS MEMBERS
TREATMENT BUILDING
GENERAL ARRANGEMENTS & PLACEMENTS
ASSEMBLIES & SCHEMES
ELEVATIONS
SECTIONS
DETAILS
MEMBER DIAGRAMS
PARTS
MATERIAL LISTS
ADVANCED DATA REQUIREMENTS
Capitol Tweets: Yeas and Nays of the Congressional TwitterverseEdelman
Edelman’s Capitol Tweets study looks at U.S. Congressional performance on Twitter, including regional differences and levels of bipartisan engagement. These slides feature supporting graphs from the analysis.
There's no escaping the fact that data visualization is hot right now. Everyone wants to tell their data's story visually, whether it be through a map, chart, or more detailed presentation. The difficulty is there are so many different tools that solve this, each one with their own benefits and limitations. We feel D3.js is the most awesome tool for handling this task -- which is the approach we've used for the sites like the Nation's Report Card, BlueCross BlueShield of North Carolina, GlobalChange, and others.
Introduction to data visualisations with d3.js — Data Driven DocumentsMichał Oniszczuk
Introduction to data visualisations with d3.js and how we use it in ADA lab where we visualise large datasets (adalab.icm.edu.pl) and in the whole ICM (icm.edu.pl).
Presentation for the Data Science Warsaw meetup (http://www.meetup.com/Data-Science-Warsaw/).
Synopsis:
D3.js is a Javascript library primarily used to create interactive data visualizations in the browser. Despite its growing popularity and warm community, getting started with D3 can be tricky. This talk covers the basics of D3 and sheds light on some of its main conceptual hurdles. It concludes by discussing some applications of D3 to big data.
About the speaker:
Sam Selikoff [ http://www.samselikoff.com/ | @samselikoff ] is a self-taught full-stack web developer. Formerly a graduate student of economics and finance, he unexpectedly discovered a passion for programming while doing data work for a consulting firm. He is currently focusing on client-side MVC and data visualization.
Thanks to our Sponsors
Microsoft [ http://microsoftnewengland.com ] for providing awesome venue for the event.
Rovi [ http://rovi.com ] for providing the food/drinks.
cognizeus [ http://cognizeus.com ] for hosting the event and providing books to give away as raffle.
We’d like to share with you the announcement related to our Q3 2011 earnings. We’ll also be live sharing the earnings call both from LinkedIn’s Company Page and our @linkedin account, starting 2PM Pacific Time later today.
Please see Disclaimer and Safe Harbor statement in the blog post.
http://stocktwits.com/LinkedIn/message/5682633
SPICE MODEL of 2SK2698 (Professional+BDP Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of 2SK2698 (Professional+BDP Model) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
Examples of some functions used in advanced way. You will realize the power of Excel in resolving real life problem, particularly in inventory management
Downloading to view is strongly recommended; otherwise, the limitation of slideshare.net
Capitol Tweets: Yeas and Nays of the Congressional TwitterverseEdelman
Edelman’s Capitol Tweets study looks at U.S. Congressional performance on Twitter, including regional differences and levels of bipartisan engagement. These slides feature supporting graphs from the analysis.
There's no escaping the fact that data visualization is hot right now. Everyone wants to tell their data's story visually, whether it be through a map, chart, or more detailed presentation. The difficulty is there are so many different tools that solve this, each one with their own benefits and limitations. We feel D3.js is the most awesome tool for handling this task -- which is the approach we've used for the sites like the Nation's Report Card, BlueCross BlueShield of North Carolina, GlobalChange, and others.
Introduction to data visualisations with d3.js — Data Driven DocumentsMichał Oniszczuk
Introduction to data visualisations with d3.js and how we use it in ADA lab where we visualise large datasets (adalab.icm.edu.pl) and in the whole ICM (icm.edu.pl).
Presentation for the Data Science Warsaw meetup (http://www.meetup.com/Data-Science-Warsaw/).
Synopsis:
D3.js is a Javascript library primarily used to create interactive data visualizations in the browser. Despite its growing popularity and warm community, getting started with D3 can be tricky. This talk covers the basics of D3 and sheds light on some of its main conceptual hurdles. It concludes by discussing some applications of D3 to big data.
About the speaker:
Sam Selikoff [ http://www.samselikoff.com/ | @samselikoff ] is a self-taught full-stack web developer. Formerly a graduate student of economics and finance, he unexpectedly discovered a passion for programming while doing data work for a consulting firm. He is currently focusing on client-side MVC and data visualization.
Thanks to our Sponsors
Microsoft [ http://microsoftnewengland.com ] for providing awesome venue for the event.
Rovi [ http://rovi.com ] for providing the food/drinks.
cognizeus [ http://cognizeus.com ] for hosting the event and providing books to give away as raffle.
We’d like to share with you the announcement related to our Q3 2011 earnings. We’ll also be live sharing the earnings call both from LinkedIn’s Company Page and our @linkedin account, starting 2PM Pacific Time later today.
Please see Disclaimer and Safe Harbor statement in the blog post.
http://stocktwits.com/LinkedIn/message/5682633
SPICE MODEL of 2SK2698 (Professional+BDP Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of 2SK2698 (Professional+BDP Model) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
Examples of some functions used in advanced way. You will realize the power of Excel in resolving real life problem, particularly in inventory management
Downloading to view is strongly recommended; otherwise, the limitation of slideshare.net
www. parker.com/aboutus With annual sales exceeding $13 billion in fiscal year 2012, Parker Hannifin is the world’s leading diversified manufacturer of motion and control technologies and systems. Strong competitive advantages, a clear strategy and goals, consistent execution and performance, and many opportunities for growth, have allowed the company to consistently deliver strong shareholder returns. Parker has increased its annual dividends paid to shareholders for 56 consecutive fiscal years, among the top five longest-running dividend-increase records in the S&P 500 index.
SPICE MODEL of 2SK2543 (Standard+BDS Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of 2SK2543 (Standard+BDS) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
We’d like to share with you the announcement related to our Q4 2011 earnings. We’ll also be live sharing the earnings call both from LinkedIn’s Company Page and our @linkedin account, starting 2PM today, Feb 9.
SPICE MODEL of 2SK2611 (Professional+BDP Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of 2SK2611 (Professional+BDP Model) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
SPICE MODEL of 2SK2698 (Standard+BDS Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of 2SK2698 (Standard+BDS) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
SPICE MODEL of 2SK2543 (Professional+BDP Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of 2SK2543 (Professional+BDP Model) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
Reference ranges for cardiovascular indices for adolescents derived using the Ultrasonic Cardiac Output Monitor (USCOM).
Cattermole GN, Ho GYL, Mak PSK, Graham CA, Rainer TH.
July 2011
SPICE MODEL of TPCM8002-H (Standard+BDS Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of TPCM8002-H (Standard+BDS) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
SPICE MODEL of TK40J60T (Standard+BDS Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of TK40J60T (Standard+BDS) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
SPICE MODEL of 2SK2916 (Professional+BDP Model) in SPICE PARKTsuyoshi Horigome
SPICE MODEL of 2SK2916 (Professional+BDP Model) in SPICE PARK. English Version is http://www.spicepark.net. Japanese Version is http://www.spicepark.com by Bee Technologies.
Machine Learning Share No.1
This slide include some study experience of machine learning, machine learning is a methodology, It provide the ability of improve performance.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
2. AGENDA
Introduction
Examples
A guide of bar chart
The analysis of source code
The Wealth & Health of Nations
An time series visual design of Adserver svn commit
record
Resources
4. D3.JS: DATA-DRIVEN DOCUMENTS
JavaScript Library
Open source (BSD license)
developed by Michael Bostock and others at Stanford
University
former work on Protovis Library
from Intro to d3
5. D3.JS: DATA-DRIVEN DOCUMENTS
not a traditional visualization framework
focus on efficient manipulation of documents based on
data
bind arbitrary data to the DOM
apply data-driven transformations to the document
functional/declarative style
support for interaction and animation
you have to do the graphical representation yourself!
but has helpers for SVG generation
from Intro to d3
8. DYNAMIC PROPERTIES
d3.selectAll("p")
.data([4, 8, 15, 16, 23, 42])
.style("font-size", function(d, i) { return d + "px"; });
bind data to a selection
apply functions to styles, attributes and other
properties
a lot of built-in reusable functions available
bound data available as first argument
you can omit the data operator the second time!
9. ENTER AND EXIT
var p = d3.select("body").selectAll("p") // Update…
.data([4, 8, 15, 16, 23, 42])
.text(String);
p.enter().append("p") // Enter…
.text(String);
p.exit().remove(); // Exit…
enter: selects all data elements without a DOM
representation
exit: selects all DOM elements without data
common pattern
perform only necessary modifications
10. SUBSELECTIONS
d3.selectAll("ul")
.data(questions) // an array of questions
.selectAll("li")
// a nested array of responses
.data(function(d) { return d.responses; })
// the text of the response
.text(function(d) { return d.text; });
generate a subselection by calling selectAll on an
existing selection
maintains the hierarchical structure
11. TRANSITIONS
// fade background from white to black in 1s
d3.select("body").transition()
.duration(1000)
.style("background-color", "black");
with d3.js they are easy!
various tweening functions
interpolation of basic types, numbers and numbers in
strings (e.g. "15px")
18. Agglo merativeCluster
lity
Co mmunityStructure
L inkD e nne ssCe ntra
O pe rato pe rato rL ist
te r
Stac ando m L ayo u t
HierarchicalClus
O pe rato rSw e
ke r
No d
Span e stPaths t
Tre e M
Sho rt lo wMinCu
Rad
So rtO pe ratoh
Ind Icicle cte d L ayyo ut t
ke dA
nce
Visualization
R
B an
Fo ndr ck le L o u ut
e
O
Tre e
MaxF istance
e L in
rSe que nc
Me rge Edg
e nt
rce o g ing ay te
ialTr Pie L ay o ut
De Pa c R o
Cir
r
que
Ob mbixInte to r lato r r
O pe ra
atio
Int te In te rp o lato
re aL ayo ut
Nu atr o la rpo ato
apL a
ed
kTre L ayyo ut
ning
cle
Bu
Dir ra L a o u r
e I la to r
ee
ct Inte te rpo to r
gl o o la lato
Be twe
nSe
e ctR
ol
nd
Tre e L ay o ut
e
r
nt to r
L
to
Tre L ay o ut
Dao lo rIn te rp
ayo u
e L a o ut
Sta
itc
Reo int ctInrInte o la
yo utt
le d A
la
e La ou
to r
ctio
Funsing
er r
Cir ge ay
ck R
r
po
rp
Asp
C rayIn
y
m
M e rp te
Ed xisL
ou
an rp rp
e d ad
Ea
t
Ar ial L a
P je e
Ar
e a L a be o r
le
t
Se cheuse le l lab
L a be le
G
n
be le r
ra
l u
Fis
izatio
Pa ara e d
IO
p
le r
hD
cluste r
he
itio nc r
Vi tan
pe Filtete r
ns ue ule
P ch
r
e
graph
sib c
t
is
ye
er en
ra
IS
Tra q d
r
o ptim
ilit e F
Tre
n
o n nEv rte
te
t
Pr Sha Siz
y il
lay
op p eE eF iti io ve r
o la
S
e r e E nc ilte ns sit on e
o ut
r
Traran e n rs tC rt
e rp
tyE nc o
Co n o de r T we rte Te x nv e r
lo En co de r
int
Fis rEn co de r T v e te d Co rte
o nlimi hML nv e rte r
la
he co de r
b
ye C e p o ve
el
Bif D de r D ra aC o n
cs
o c D isto r G at NC
analyti
alD isto rtio ID SO
filt
isto rtio n ld a
op
Le en J Fie he m
e
ge rtio n
r
co s ataaSc t
e ra
L e ndR n de rte
r D at e ce
g e an D ataS o ur
nd ge r ve
to r
e
L e g Ite m dis on D taS able
at
Visu
en to c Da taT til
im
aliz d rtio
a
T tio n Da taU
an
n Da
Se leo o ltip Ev e nt le g rite
ctio Ev e n ySp
Dat nEv t en
d Dirt e Sprite
aEv e nt L in
e nt
Tre e eve
Build nts
e ta lay
Scale Tre er da disp
Bindin
g
Shape R
e nde re fle x
IRe nd r
Edge Re nd e re r v is
e re r re nde r
Arro wType
physics
Node Sprite data
EdgeSprite
DataSprite fla
re
DataList
Data
ntro l
To o ltipCo ntro l
nCo
Se le ctiomCo ntro l ls
o ol ro
PanZo ICo ntr o l co nt
ntr
e rCo ntro l
Ho v dCo
n ro l
Expa agCo ntlL ist
Dr o ntro o l
C tr qu
Co n tro l is er
kCo
n ax y
Clic
48. PLAY WITH DATA
var dataset = [ 25, 7, 5, 26, 11, 8, 25, 14, 23, 19,
14, 11, 22, 29, 11, 13, 12, 17, 18, 10,
24, 18, 25, 9, 3 ];
d3.select("body").selectAll("div")
.data(dataset) // <-- The answer is here!
.enter()
.append("div")
.attr("class", "bar")
.style("height", function(d) {
var barHeight = d * 5;
return barHeight + "px";
});
49. MAKING A BAR CHART
var dataset = [ 5, 10, 13, 19, 21, 25, 22, 18, 15, 13,
11, 12, 15, 20, 18, 17, 16, 18, 23, 25 ];
50. MAKING A BAR CHART
svg.selectAll("rect")
.data(dataset)
.enter()
.append("rect")
.attr("x", 0)
.attr("y", 0)
.attr("width", 20)
.attr("height", 100);
51. MAKING A BAR CHART
.attr("x", function(d, i) {
return i * 21; //Bar width of 20 plus 1 for padding
})
52. MAKING A BAR CHART
.attr("height", function(d) {
return d;
});
53. MAKING A BAR CHART
.attr("y", function(d) {
return h - d; //Height minus data value
})
.attr("height", function(d) {
return d * 4; //Just the data value
});
54. MAKING A BAR CHART
.attr("fill", function(d) {
return "rgb(0, 0, " + (d * 10) + ")";
});
55. MAKING A BAR CHART
svg.selectAll("text")
.data(dataset)
.enter()
.append("text")
.text(function(d) {
return d;
})
.attr("text-anchor", "middle")
.attr("x", function(d, i) {
return i * (w / dataset.length) + (w / dataset.length - barPadd
ing) / 2;
})
.attr("y", function(d) {
return h - (d * 4) + 14;
})
.attr("font-family", "sans-serif")
.attr("font-size", "11px")
.attr("fill", "white");
59. TRANSITION
// Start a transition that interpolates the data based on year.
svg.transition()
.duration(duration)
.ease("linear")
.tween("year", tweenYear())
.each("end", enableInteraction);
// Tweens the entire chart by first tweening the year, and then the da
ta.
// For the interpolated data, the dots and label are redrawn.
function tweenYear(start, end) {
start = start || 1800;
end = end || 2009;
return function() {
var year = d3.interpolateNumber(start, end);
return function(t) { displayYear(year(t)); };
}
}
60. INTERPOLATE DATA
// Interpolates the dataset for the given (fractional) year.
function interpolateData(year) {
return nations.map(function(d) {
return {
name: d.name,
income: interpolateValues(d.income, year),
//...
};
});
}
// Finds (and possibly interpolates) the value for the specified year.
function interpolateValues(values, year) {
var i = bisect.left(values, year, 0, values.length - 1),
a = values[i];
if (i > 0) {
var b = values[i - 1],
t = (year - a[0]) / (b[0] - a[0]);
67. RESOURCES
D3js Wiki
Paper:D3: Data-Driven Documents
Mike Bostock
Visual.ly
David McCandless: The beauty of data visualization
GapMinder - for a fact-based world view