7
$\begingroup$

With

WolframLanguageData[{"ListLogPlot", "Plot", "ColorNegate"}, "Timeline"]

one gets information at what time and version a certain function was implemented:

enter image description here

UPDATE:

Show is a good idea as long as the functions were not introduced at the same time.

p1 = WolframLanguageData[{"Plot"}, "Timeline"];
p2 = WolframLanguageData[{"Sin"}, "Timeline"];
Show[p1, p2]

Here the function labels overlap:

enter image description here

Do you have an idea how a larger set of commands can be visualized in one diagram?

E.g.:

functions = {"Sin", "Cos", "Tan", "Image", "ImageApply", "Array"};

How can I make a timeline (with Show or somehow else) with no overlap?

$\endgroup$
  • $\begingroup$ What have you tried? Have you tried Show? Do you know how to make a combined timeline from scratch using the raw data, or would you need help with that should no other solution exist? $\endgroup$ – C. E. Dec 14 '16 at 11:32
  • $\begingroup$ @C. E. see Update ... $\endgroup$ – mrz Dec 14 '16 at 12:47
  • 1
    $\begingroup$ Use something like WolframLanguageData[{"ListLogPlot", "Plot", "ColorNegate"}, {"DatesModified", "VersionsModified"}] then parse it out using TimelinePlot[Labeled[Interval[], ....] you can modify the spacing and like or use legends. $\endgroup$ – Ramble Dec 14 '16 at 16:02
  • $\begingroup$ @Ramble: Can you show the exact solution? $\endgroup$ – mrz Dec 14 '16 at 16:06
6
$\begingroup$

Try

versionData=WolframLanguageData[{"ListLogPlot", "Plot", "ColorNegate","Sin"}, {"Name", "DateIntroduced", "DateLastModified","VersionIntroduced", "VersionLastModified"}]

partTimeLine = Partition[#, 3] & /@ versionData

TimelinePlot[Labeled[Interval[#[[2 ;; 3]]], #[[1]]] & @@@ partTimeLine]

You can then add in the version numbers in the same fashion. You will probably need to fiddle manually or use a legend to deconflict tiled labels. Or you can increase the partition to include the versions

partTimeLine = Partition[#, 5] & /@ versionData

Then change

TimelinePlot[Labeled[Interval[#[[2 ;; 3]]], #[[1]]<>ToString[#[[{4, 5}]]]] & @@@ partTimeLine]

enter image description here

enter image description here

To label line and place version numbers at each end:

TimelinePlot[
 Labeled[Interval[#[[2 ;; 3]]], #[[{1, 4, 5}]], {Bottom, Left, 
     Right}] & @@@ partTimeLine]

enter image description here

$\endgroup$
  • $\begingroup$ This is a nice solution ... how would you show the version number? $\endgroup$ – mrz Dec 15 '16 at 9:23
  • $\begingroup$ Thanks. Edited it to include the version number. $\endgroup$ – Ramble Dec 15 '16 at 17:04
  • $\begingroup$ Or do the same as WolframLanguageData: TimelinePlot[ Labeled[Labeled[ Interval[{DateObject[{2003, 4, 28}], DateObject[{2013, 3, 1}]}], "a"], {"b", "c"}, {Before, After}]] $\endgroup$ – MinHsuan Peng Jan 20 '17 at 20:47
2
$\begingroup$

I think GraphicsColumn is what you are looking for.

functions = {"Sin", "Cos", "Tan", "Image", "ImageApply", "Array"};
plots = WolframLanguageData[functions, "Timeline"];
GraphicsColumn[plots]

plots

$\endgroup$
  • $\begingroup$ I wanted to see everything in one timeline ... $\endgroup$ – mrz Dec 14 '16 at 16:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.